{
 "cells": [
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": [
    "# 给数据确定新的分组\n",
    "\n",
    "因为原数据中不同分组之间时间仍然是连续的，为了获得更多的时序信息考虑制定新的分组策略"
   ],
   "id": "fea5f091d7d16830"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T11:58:46.179472Z",
     "start_time": "2024-10-23T11:58:45.108052Z"
    }
   },
   "cell_type": "code",
   "source": [
    "import pandas as pd\n",
    "from datetime import datetime\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch"
   ],
   "id": "a1962493edcf99c0",
   "outputs": [],
   "execution_count": 140
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:17.560399Z",
     "start_time": "2024-10-23T07:13:17.547027Z"
    }
   },
   "cell_type": "code",
   "source": [
    "data_num = 21\n",
    "dir = f'../data/raw/train'\n",
    "data_file = f'./data/{data_num}_label.csv'\n",
    "data_normal_file = f'{dir}/{data_num}/{data_num}_normalInfo.csv'\n",
    "data_failure_file = f'{dir}/{data_num}/{data_num}_failureInfo.csv'\n",
    "save_file = f'./data/{data_num}_label_newgroup.csv'"
   ],
   "id": "996247357c3ac383",
   "outputs": [],
   "execution_count": 109
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:17.937030Z",
     "start_time": "2024-10-23T07:13:17.562397Z"
    }
   },
   "cell_type": "code",
   "source": "df = pd.read_csv(data_file)\n",
   "id": "4eaeab351b16ae0",
   "outputs": [],
   "execution_count": 110
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:17.953030Z",
     "start_time": "2024-10-23T07:13:17.939030Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def show_group_plot(group_counts, title = 'Scatter Plot'):\n",
    "    plt.figure()  # 创建新的图形\n",
    "    plt.scatter(group_counts.index, group_counts.values)\n",
    "    plt.title(title)\n",
    "    plt.xlabel('Group')\n",
    "    plt.ylabel('Count')\n",
    "    plt.grid()\n",
    "    # 显示图表\n",
    "    plt.show()\n",
    "    \n",
    "def show_group_bar(group_counts, bins):\n",
    "    labels = [f\"{bins[i]}-{bins[i+1]-1}\" for i in range(len(bins)-1)]\n",
    "    # 计算每个组的数量落在各个区间内\n",
    "    count_bins = pd.cut(group_counts.values, bins=bins, right=False)\n",
    "    # 统计每个区间内的组数\n",
    "    count_distribution = count_bins.value_counts().reindex(labels, fill_value=0)\n",
    "    show_group_plot(count_distribution)    \n",
    "    # 绘制柱状图\n",
    "    # plt.figure(figsize=(8, 5))\n",
    "    # plt.bar(count_distribution.index, count_distribution.values, color='skyblue')\n",
    "    # plt.title('Group Count Distribution by Range')\n",
    "    # plt.xlabel('Count Range')\n",
    "    # plt.ylabel('Number of Groups')\n",
    "    # plt.xticks(rotation=45)  # 旋转 x 轴标签\n",
    "    # plt.grid(axis='y')  # 仅在 y 轴上显示网格\n",
    "    # plt.tight_layout()  # 自动调整布局\n",
    "    # plt.show()\n",
    "\n",
    "def group_analyse(df, col='group'):\n",
    " \n",
    "    group_counts = df[col].value_counts()\n",
    "    show_group_plot(group_counts, title='Scatter Plot of Group Counts')\n",
    "    print(f\"max: {group_counts.values.max()}\", f\"min: {group_counts.values.min()}\", f\"avg: {group_counts.values.sum() / len(group_counts)}\")\n",
    "    \n",
    "    filtered_df = df[df['label'] != -1]\n",
    "    group_counts = filtered_df[col].value_counts()\n",
    "    show_group_plot(group_counts, title='Scatter Plot of Group Counts Label!=-1')\n",
    "    print(f\"max: {group_counts.values.max()}\", f\"min: {group_counts.values.min()}\", f\"avg: {group_counts.values.sum() / len(group_counts)}\")"
   ],
   "id": "65acd926a8d79c37",
   "outputs": [],
   "execution_count": 111
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.157309Z",
     "start_time": "2024-10-23T07:13:17.954030Z"
    }
   },
   "cell_type": "code",
   "source": "group_analyse(df)",
   "id": "618500a2d37080ae",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHFCAYAAAAUpjivAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB2x0lEQVR4nO3deXxTVd4/8E/apittaKndBEpBBWrZZXUDoQUUUHlGdEAGxuVRFEYEHcENGB1RxhHngREdNxTGwef3KAjCVIqCiICsVUoBBQqItBRo6b6kyfn90Uls2iz3JjfJzc3n/Xrx0twt59wtp+d7Fp0QQoCIiIhIo0L8nQAiIiIib2Jhh4iIiDSNhR0iIiLSNBZ2iIiISNNY2CEiIiJNY2GHiIiINI2FHSIiItI0FnaIiIhI01jYISIiIk1jYYeole+++w533nknOnfujIiICCQnJ2Po0KGYO3eu175z586dWLhwIS5fvtxm3RtvvIGVK1d67bvtGT58OHQ6nfVfVFQU+vTpg9dffx1ms9m63fTp09GlSxe3vsNb+WpsbMTDDz+M1NRUhIaGom/fvi73+fzzz3H77bcjLS0N4eHhiI2NRb9+/bBgwQKcOXNG8TT6ktlsxqpVqzBq1CgkJiZCr9cjKSkJ48aNw4YNG2yup7/U1tZi4cKF2LZtm7+TQhrFwg5RCxs3bsSwYcNQWVmJJUuWYPPmzfjb3/6G66+/Hh9//LHXvnfnzp1YtGiRago7ANC1a1fs2rULu3btwscff4wrr7wSjz/+OObPn6/I8b2VrxUrVuCtt97CM888gx07dmDVqlUOtzWbzZg2bRrGjx8Po9GIxYsXIy8vD//v//0/TJw4EatWrcL111+veBp9pb6+HrfeeiumTZuGpKQkrFixAl999RXefPNNpKWl4a677sKGDRv8nUzU1tZi0aJFLOyQ14T5OwFEarJkyRJkZGTgiy++QFjYr4/HPffcgyVLlvgxZcoSQqC+vh5RUVEOt4mKisKQIUOsn8eOHYsePXpg+fLlePHFF6HX632RVNkKCgoQFRWFmTNnutz2lVdewYcffojFixdj3rx5NuvGjBmD+fPn46233nJ5nLq6Oqfn0l/mzJmDL774Ah988AF+97vf2aybOHEinnzySdTV1fkpdUQ+JIjI6tprrxWDBw+WvP0///lPMWTIEBETEyNiYmJEnz59xDvvvGNdv3nzZjFhwgRx5ZVXioiICNGtWzfx3//93+LChQvWbRYsWCAAtPm3detWkZ6e3mZ5enq6dd+Kigoxd+5c0aVLF6HX60VaWpp47LHHRHV1tU06AYhHH31UrFixQvTo0UPo9XqxYsUKh/m6+eabxbXXXttm+V133SUAiF9++UUIIcS0adNs0iOEEHV1dWLevHk2aXrkkUdEeXm5dRtX+bJHynHtncf333/f7vEaGhpE+/btRVZWltPvbS09PV3cdttt4pNPPhF9+/YVERER4qmnnhJCCHHo0CExYcIE0b59exERESH69OkjVq5cabP/+++/LwCIoqIim+Vbt261XncLy3XYvn27GDx4sIiMjBRpaWni2WefFU1NTU7TWVxcLPR6vRg9erTkvJ0+fVpMmTJFXHHFFSI8PFz06NFDvPrqq8JkMjlNpxBCFBUVtTnf06ZNEzExMeKnn34SY8eOFTExMaJjx45izpw5or6+3ma/1v+mTZsmhBCitLRUPPjgg6Jjx44iPDxcJCYmimHDhom8vDzJ+SJizQ5RC0OHDsU777yDP/zhD5gyZQr69+/vsAbj+eefxwsvvICJEydi7ty5MBgMKCgowOnTp63bnDhxAkOHDsUDDzwAg8GAU6dO4bXXXsMNN9yAQ4cOQa/X44EHHkBZWRmWLVuGTz/9FKmpqQCAzMxMrF27Fr/5zW9gMBjwxhtvAAAiIiIANFf933zzzTh79iyefvpp9O7dG4cPH8bzzz+PQ4cOYcuWLdDpdNa0rFu3Dt988w2ef/55pKSkICkpSfb5OXHiBMLCwhAfH293vRACd9xxB7788kvMnz8fN954I3744QcsWLDAGhKLiIhwmi9Pjrtr1y688MIL2Lp1K7766isAQLdu3ewec9++fbh8+TJmzJgh+zwcOHAAR44cwbPPPouMjAzExMTg2LFjGDZsGJKSkvA///M/6NChA1avXo3p06fj/Pnz+OMf/yj7ewCgpKQE99xzD+bNm4c//elP2LhxI1588UWUl5dj+fLlDvfbunUrjEYj7rjjDknfc+HCBQwbNgyNjY144YUX0KVLF3z++ed44okncOLECet1kstoNGLChAm4//77MXfuXGzfvh0vvPACDAYDnn/+eaSmpiI3NxdjxozB/fffjwceeAAAcMUVVwAApk6digMHDuDPf/4zrrnmGly+fBkHDhzApUuX3EoPBSl/l7aI1OTixYvihhtusP51qdfrxbBhw8TixYtFVVWVdbuTJ0+K0NBQMWXKFMnHNpvNwmg0itOnTwsA4rPPPrOu+8tf/mL3r30hmmubbr755jbLFy9eLEJCQsTevXttlv/f//2fACA2bdpkXQZAGAwGUVZWJimtlhoFo9EojEajOHfunJg3b54AIO666y7rdq1rdnJzcwUAsWTJEpvjffzxxwKA+Mc//uEyX/bIOa6lNsGVNWvWCADizTffbLPOkm/Lv5bS09NFaGioOHbsmM3ye+65R0RERIgzZ87YLB87dqyIjo4Wly9fFkLIr9lpfa8IIcSDDz4oQkJCxOnTpx3m7+WXXxYARG5ursNtWrJc3++++85m+YwZM4ROp7PmV27NDgDxv//7vzbb3nrrraJ79+7WzxcuXBAAxIIFC9qkq127dmL27NmS8kDkCBsoE7XQoUMHfPPNN9i7dy9efvll3H777fjxxx8xf/589OrVCxcvXgQA5OXlwWQy4dFHH3V6vNLSUjz88MPo1KkTwsLCoNfrkZ6eDgA4cuSIR2n9/PPPkZWVhb59+6Kpqcn6b/To0dDpdG0ae95yyy0Oa2TsOXz4MPR6PfR6PdLS0vDXv/4VU6ZMwdtvv+1wH0ttyvTp022W33XXXYiJicGXX34p+ft9cVx7Ll++bM235d++fftstunduzeuueaaNmkcOXIkOnXqZLN8+vTpqK2txa5du9xKT2xsLCZMmGCzbPLkyTCbzdi+fbtbx7Tnq6++QmZmJgYNGmSzfPr06RBCWK+BXDqdDuPHj7dZ1rt3b5saUGcGDRqElStX4sUXX8Tu3bthNBrdSgcFN4axiOy47rrrcN111wForoZ/6qmnsHTpUixZsgRLlizBhQsXAAAdO3Z0eAyz2YycnBycO3cOzz33HHr16oWYmBiYzWYMGTLE44ah58+fx/Hjxx2G2SwFMwtLeEyqbt26Yc2aNdDpdIiMjERGRgaio6Od7nPp0iWEhYVZQxAWOp0OKSkpbocevHHczp07A0CbH93Y2Fjs3bsXQHOBctGiRW32tXcuL126ZHd5Wlqadb07kpOT2yxLSUlxeUxL/oqKiiR9z6VLl+wOI+Bp+qOjoxEZGWmzLCIiAvX19ZL2//jjj/Hiiy/inXfewXPPPYd27drhzjvvxJIlS6zngcgVFnaIXNDr9ViwYAGWLl2KgoICAL+2Jzh79mybv+QtCgoK8P3332PlypWYNm2adfnx48cVSVdiYiKioqLw3nvvOVzfUsv2O1JERkZaC3xSdejQAU1NTbhw4YJNwUQIgZKSEgwcOFDW8bx53AEDBiA+Ph4bNmzASy+9ZF0eGhpqzbflerdm71x26NABxcXFbZafO3cOwK/Xw/LD39DQYLNd68Kpxfnz59ssKykpsX6nIyNGjIBer8e6devw8MMPO9zO2+n3VGJiIl5//XW8/vrrOHPmDNavX4958+ahtLQUubm5XvlO0h6GsYhasPeyB34NOVn+ys3JyUFoaChWrFjh8FiWH8TWDW/tdWW2bGOvticiIsLu8nHjxuHEiRPo0KGDtSaq5T93B/vzxMiRIwEAq1evtln+ySefoKamxroecJwvT48rVXh4OJ588kkUFBTglVdekb2/vTR+9dVX1sKBxYcffojo6GhrN37Ldfnhhx9stlu/fr3d41ZVVbVZ99FHHyEkJAQ33XSTw/SkpKTggQcewBdffIEPP/zQ7jYnTpywpmPkyJEoLCzEgQMH2qRfp9NhxIgRbqVfCmf3f0udO3fGzJkzkZ2d3SadRM6wZoeohdGjR6Njx44YP348evToAbPZjPz8fPz1r39Fu3bt8NhjjwFofuE//fTTeOGFF1BXV4ff/va3MBgMKCwsxMWLF7Fo0SL06NED3bp1w7x58yCEQEJCAjZs2IC8vLw239urVy8AwN/+9jdMmzYNer0e3bt3R2xsLHr16oU1a9bg448/RteuXREZGYlevXph9uzZ+OSTT3DTTTfh8ccfR+/evWE2m3HmzBls3rwZc+fOxeDBg316/rKzszF69Gg89dRTqKysxPXXX2/tNdWvXz9MnTrVJs/28uXpceV46qmncPToUcybNw/bt2/H3XffjS5duqChoQEnT57EO++8g9DQUJfhOwBYsGABPv/8c4wYMQLPP/88EhIS8M9//hMbN27EkiVLYDAYAAADBw5E9+7d8cQTT6CpqQnx8fFYu3YtduzYYfe4HTp0wIwZM3DmzBlcc8012LRpE95++23MmDHDGqpy5LXXXsPJkycxffp0fPHFF7jzzjuRnJyMixcvIi8vD++//z7WrFmD3r174/HHH8eHH36I2267DX/605+Qnp6OjRs34o033sCMGTOsbZRS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Drb8AsxzIObZEplxRbWFncTERISFhSEzM9Nmec+ePbFjxw4AQEpKChobG1FeXo74+HjrNqWlpRg2bJjDY0dERCAiIqLNcr1e75WL7a3jqhnzDIzt3RE5WVdquv2Ir66zySzwp43HUG+yf+50AP608Rhysq70+vkNtns72PILMM+BRGqaVTvOTnh4OAYOHIhjx47ZLP/xxx+Rnp4OABgwYAD0ej3y8vKs64uLi1FQUOC0sEPkK5bh8m/veyWGduugqYKOL7E7PxF5wq81O9XV1Th+/Lj1c1FREfLz85GQkIDOnTvjySefxN13342bbrrJ2mZnw4YN2LZtGwDAYDDg/vvvx9y5c9GhQwckJCTgiSeeQK9evay9s4go8LE7PxF5wq+FnX379mHEiBHWz5Z2NNOmTcPKlStx55134s0338TixYvxhz/8Ad27d8cnn3yCG264wbrP0qVLERYWhkmTJqGurg4jR47EypUrERoa6vP8EJF3sDs/EXnCr4Wd4cOHw1VnsPvuuw/33Xefw/WRkZFYtmwZli1bpnTyiEglLNNBlFQ47s6fwukgiMgB1bbZISKy4HQQROQJFnaIKCBwOggicpdqu54TEbXG6SCIyB0s7BBRQLF05ycikophLCIiItI0FnaIiIhI01jYISIiIk1jYYeIiIg0jYUdIiIi0jQWdoiIiEjTWNghIiIiTWNhh4iIiDSNhR0iIiLSNLcKO127dsWlS5faLL98+TK6du3qcaKIiIiIlOJWYefUqVMwmUxtljc0NOCXX37xOFFERERESpE1N9b69eut///FF1/AYDBYP5tMJnz55Zfo0qWLYokjIiIi8pSsws4dd9wBANDpdJg2bZrNOr1ejy5duuCvf/2rYokLRiazcGtGZ3f3CwY8N0REwU1WYcdsNgMAMjIysHfvXiQmJnolUcEqt6AYizYUorii3ros1RCJBeMzMSYrVfH9ggHPDRERudVmp6ioiAUdheUWFGPG6gM2P8oAUFJRjxmrDyC3oFjR/YIBzw0REQEya3Za+vLLL/Hll1+itLTUWuNj8d5773mcsGBiMgss2lAIYWedAKADsGhDIbIzU2zCL+7uFwxcnRsgeM8NEVGwcatmZ9GiRcjJycGXX36Jixcvory83OYfybOnqKxN7UNLAkBxRT32FJUpsl8wcHVugOA9N0REwcatmp0333wT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2WPd5rvvvkNFRYUqz4GloPPTTz9hy5Yt6NChg8t9Dh8+DKPRaL3ugZbn1ty5jwM1z++++y4GDBiAPn36uNxWa9eZvbG8ZM2aNUKv14t3331XFBYWitmzZ4uYmBhx6tQpfydNthkzZgiDwSC2bdsmiouLrf9qa2uFEEJUVVWJuXPnip07d4qioiKxdetWMXToUHHllVeKyspK63Eefvhh0bFjR7FlyxZx4MABccstt4g+ffqIpqYmf2XNoblz54pt27aJkydPit27d4tx48aJ2NhY6/V7+eWXhcFgEJ9++qk4dOiQ+O1vfytSU1MDNr8WJpNJdO7cWTz11FM2y7VwjauqqsTBgwfFwYMHBQDx2muviYMHD1p7Hil1TceMGSN69+4tdu3aJXbt2iV69eolxo0b5/P8CuE8z0ajUUyYMEF07NhR5Ofn2zzbDQ0NQgghjh8/LhYtWiT27t0rioqKxMaNG0WPHj1Ev379AjLPSt7HgZJni4qKChEdHS1WrFjRZv9AvM5ysbDjRX//+99Fenq6CA8PF/3797fpqh1IANj99/777wshhKitrRU5OTniiiuuEHq9XnTu3FlMmzZNnDlzxuY4dXV1YubMmSIhIUFERUWJcePGtdlGLe6++26Rmpoq9Hq9SEtLExMnThSHDx+2rjebzWLBggUiJSVFREREiJtuukkcOnTI5hiBlF+LL774QgAQx44ds1muhWu8detWu/fxtGnThBDKXdNLly6JKVOmiNjYWBEbGyumTJkiysvLfZRLW87yXFRU5PDZ3rp1qxBCiDNnzoibbrpJJCQkiPDwcNGtWzfxhz/8QVy6dMnmewIlz0rex4GSZ4u33npLREVFicuXL7fZPxCvs1w6IYTwatURERERkR+xzQ4RERFpGgs7REREpGks7BAREZGmsbBDREREmsbCDhEREWkaCztERESkaSzsEBERkaaxsENERESaxsIOEalSSUkJHnvsMVx11VWIjIxEcnIybrjhBrz55puora31d/KIKICE+TsBREStnTx5Etdffz3at2+Pl156Cb169UJTUxN+/PFHvPfee0hLS8OECRPa7Gc0GqHX6/2QYiJSM9bsEJHqPPLIIwgLC8O+ffswadIk9OzZE7169cJ//dd/YePGjRg/fjwAQKfT4c0338Ttt9+OmJgYvPjiiwCAFStWoFu3bggPD0f37t2xatUq67FPnToFnU6H/Px867LLly9Dp9Nh27ZtAIBt27ZBp9Nh48aN6NOnDyIjIzF48GAcOnTIZ+eAiJTDwg4RqcqlS5ewefNmPProo4iJibG7jU6ns/7/ggULcPvtt+PQoUO47777sHbtWjz22GOYO3cuCgoK8NBDD+H3v/89tm7dKjstTz75JF599VXs3bsXSUlJmDBhAoxGo9t5IyL/YGGHiFTl+PHjEEKge/fuNssTExPRrl07tGvXDk899ZR1+eTJk3Hfffeha9euSE9Px6uvvorp06fjkUcewTXXXIM5c+Zg4sSJePXVV2WnZcGCBcjOzkavXr3wwQcf4Pz581i7dq3HeSQi32Jhh4hUqWXtDQDs2bMH+fn5uPbaa9HQ0GBdft1119lsd+TIEVx//fU2y66//nocOXJEdhqGDh1q/f+EhAR0797dreMQkX+xgTIRqcpVV10FnU6Ho0eP2izv2rUrACAqKspmub1QV+uCkhDCuiwkJMS6zEJOaKr1sYlI/VizQ0Sq0qFDB2RnZ2P58uWoqamRvX/Pnj2xY8cOm2U7d+5Ez549AQBXXHEFAKC4uNi6vmVj5ZZ2795t/f/y8nL8+OOP6NGjh+w0EZF/sWaHiFTnjTfewPXXX4/rrrsOCxcuRO/evRESEoK9e/fi6NGjGDBggMN9n3zySUyaNAn9+/fHyJEjsWHDBnz66afYsmULgOaaoSFDhuDll19Gly5dcPHiRTz77LN2j/WnP/0JHTp0QHJyMp555hkkJibijjvu8EaWicibBBGRCp07d07MnDlTZGRkCL1eL9q1aycGDRok/vKXv4iamhohhBAAxNq1a9vs+8Ybb4iuXbsKvV4vrrnmGvHhhx/arC8sLBRDhgwRUVFRom/fvmLz5s0CgNi6dasQQoitW7cKAGLDhg3i2muvFeHh4WLgwIEiPz/f29kmIi/QCdEicE1ERNi2bRtGjBiB8vJytG/f3t/JISIPsc0OERERaRoLO0RERKRpDGMRERGRprFmh4iIiDSNhR0iIiLSNBZ2iIiISNNY2CEiIiJNY2GHiIiINI2FHSIiItI0FnaIiIhI01jYISIiIk1jYYeIiIg07f8DORYmxbLAAzUAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "max: 198 min: 100 avg: 102.74757281553399\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHFCAYAAAAUpjivAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB3jklEQVR4nO3deVxU9f4/8NcBhmERECQYSETcJdyXXCq3QCmXst3yq7fllqllaqV1DWiza93q/vJq3RaXzK9+771qevWimGupqZgloqaGWgkiiiAiMDCf3x/cGRlmnzmzv56PBw+dM2c+8/mcM3PmfT6rJIQQICIiIvJRAe7OABEREZEzMdghIiIin8Zgh4iIiHwagx0iIiLyaQx2iIiIyKcx2CEiIiKfxmCHiIiIfBqDHSIiIvJpDHaIiIjIpzHYIaf7/vvvce+996JNmzZQKpWIj4/HwIEDMWvWLKe95549e5CdnY0rV64YPLdo0SIsXbrUae9tzNChQyFJku4vNDQUPXr0wIcffgiNRqPbb/LkyWjbtq1d7+GsctXV1eGZZ55BQkICAgMD0bNnT4uv+fe//41x48YhMTERwcHBiIiIQK9evZCVlYVz587JnkdX0mg0+PLLL3HnnXciNjYWCoUCcXFxGD16NDZs2KB3Pt2luroa2dnZ2LFjh2xpLl26FJIk4eDBg7KkJ0kSpk2bJktaTdPMzs7W2yZ3vk05evQonn32WQwcOBDh4eGQJEnW40+OYbBDTrVx40YMGjQIlZWVWLBgAbZs2YK//vWvGDx4MFavXu20992zZw9ycnI8JtgBgHbt2mHv3r3Yu3cvVq9ejZtvvhkvvPAC5s6dK0v6zirX4sWL8cknn+DVV1/Ft99+iy+//NLkvhqNBpMmTcKYMWOgVqsxf/585OXl4R//+AfGjx+PL7/8EoMHD5Y9j65SU1ODu+66C5MmTUJcXBwWL16Mbdu24eOPP0ZiYiIeeOABbNiwwd3ZRHV1NXJycvhj60IHDx7EunXrEBMTgxEjRrg7O9RMkLszQL5twYIFSElJwebNmxEUdOPj9vDDD2PBggVuzJm8hBCoqalBaGioyX1CQ0MxYMAA3ePMzEx06dIFCxcuxJtvvgmFQuGKrNqsoKAAoaGhVt2F//nPf8by5csxf/58zJkzR++5UaNGYe7cufjkk08spnP9+nWzx9JdZs6cic2bN2PZsmX4n//5H73nxo8fjxdffBHXr193U+7InSZOnIhJkyYBAP75z396RNBLN7Bmh5zq0qVLiI2N1Qt0tAICDD9+K1euxMCBA9GiRQu0aNECPXv2xOeff657Pi8vD+PGjUPr1q0REhKCDh064Omnn0ZZWZlun+zsbLz44osAgJSUFF3T0Y4dO9C2bVscPXoUO3fu1G1v2mxUWVmJ2bNnIyUlBcHBwbj55psxY8YMXLt2TS+f2ir4jz/+GF27doVSqcSyZctsOjYKhQJ9+vRBdXU1Ll68aHK/mpoazJ07Vy9PU6dO1au1slQue9OVJAmfffYZrl+/rkvXVO1RXV0dFixYgLS0NINARysoKAhTp07V29a2bVuMHj0aa9asQa9evRASEoKcnBwAjYHWuHHjEB0djZCQEPTs2dPgOGubKc6cOaO3fceOHQZNCUOHDkVaWhp2796NAQMGIDQ0FDfffDPmzZuHhoYGs8erpKQEn332GUaOHGkQ6Gh17NgR3bt31z0+d+4cHnvsMcTFxUGpVKJr1674y1/+otfUZSyfAHDmzBmD4z158mS0aNECp06dwl133YUWLVogKSkJs2bNQm1tre51N910EwAgJydHd94mT54MALh48SL++Mc/IikpCUqlEjfddBMGDx6MrVu3mi2/NWpqajBr1iz07NkTUVFRiImJwcCBA/H111+bfM0nn3yCTp06QalUIjU1FatWrTLYp6SkBE8//TRat26N4OBgpKSkICcnB/X19Q7nWS7GrmfkOVizQ041cOBAfPbZZ3juuefw6KOPonfv3iZrMF577TW88cYbGD9+PGbNmoWoqCgUFBTg7Nmzun1Onz6NgQMH4sknn0RUVBTOnDmD999/H7fddhuOHDkChUKBJ598EpcvX8ZHH32ENWvWICEhAQCQmpqKtWvX4v7770dUVBQWLVoEAFAqlQAaq/6HDBmC3377Da+88gq6d++Oo0eP4rXXXsORI0ewdetWSJKky8u6deuwe/duvPbaa1CpVIiLi7P5+Jw+fRpBQUGIjo42+rwQAvfccw+++eYbzJ07F7fffjt++uknZGVl6ZrElEql2XI5ku7evXvxxhtvYPv27di2bRsAoH379kbTPHjwIK5cuYIpU6bYfBwOHTqEY8eO4U9/+hNSUlIQHh6OEydOYNCgQYiLi8P/+3//D61atcKK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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "max: 198 min: 2 avg: 102.08527572484365\n"
     ]
    }
   ],
   "execution_count": 112
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 根据给定时间区间重新分组",
   "id": "17c0f72835e7a380"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.173306Z",
     "start_time": "2024-10-23T07:13:18.158307Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df_normal = pd.read_csv(data_normal_file)\n",
    "df_normal[\"startTime\"] = pd.to_datetime(df_normal[\"startTime\"])\n",
    "df_normal[\"endTime\"] = pd.to_datetime(df_normal[\"endTime\"])\n",
    "normal_time_list = [(row[\"startTime\"], row[\"endTime\"]) for _, row in df_normal.iterrows()]\n",
    "\n",
    "df_failure = pd.read_csv(data_failure_file)\n",
    "df_failure[\"startTime\"] = pd.to_datetime(df_failure[\"startTime\"])\n",
    "df_failure[\"endTime\"] = pd.to_datetime(df_failure[\"endTime\"])\n",
    "failure_time_list = [(row[\"startTime\"], row[\"endTime\"]) for  _, row in df_failure.iterrows()]"
   ],
   "id": "cbfb0ea23619cb06",
   "outputs": [],
   "execution_count": 113
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.188306Z",
     "start_time": "2024-10-23T07:13:18.174306Z"
    }
   },
   "cell_type": "code",
   "source": [
    "time_list = normal_time_list + failure_time_list\n",
    "time_list"
   ],
   "id": "1f62fbad2455019c",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[(Timestamp('2015-11-01 17:33:56'), Timestamp('2015-11-04 19:42:35')),\n",
       " (Timestamp('2015-11-05 11:06:58'), Timestamp('2015-11-09 01:23:21')),\n",
       " (Timestamp('2015-11-09 12:20:10'), Timestamp('2015-11-09 19:27:44')),\n",
       " (Timestamp('2015-11-10 12:43:11'), Timestamp('2015-11-13 00:38:54')),\n",
       " (Timestamp('2015-11-13 09:10:07'), Timestamp('2015-11-15 16:35:22')),\n",
       " (Timestamp('2015-11-17 12:14:11'), Timestamp('2015-11-23 18:41:59')),\n",
       " (Timestamp('2015-11-24 01:24:28'), Timestamp('2015-11-24 02:39:43')),\n",
       " (Timestamp('2015-11-24 10:49:16'), Timestamp('2015-11-24 12:12:22')),\n",
       " (Timestamp('2015-11-25 18:00:45'), Timestamp('2015-11-25 18:56:39')),\n",
       " (Timestamp('2015-11-26 10:10:29'), Timestamp('2015-11-28 02:16:54')),\n",
       " (Timestamp('2015-11-28 11:52:25'), Timestamp('2015-11-29 02:30:52')),\n",
       " (Timestamp('2015-11-29 11:48:35'), Timestamp('2015-11-29 14:36:44')),\n",
       " (Timestamp('2015-11-30 10:11:49'), Timestamp('2015-11-30 13:08:09')),\n",
       " (Timestamp('2015-12-01 01:09:39'), Timestamp('2015-12-01 18:59:11')),\n",
       " (Timestamp('2015-11-04 22:15:38'), Timestamp('2015-11-04 23:33:34')),\n",
       " (Timestamp('2015-11-09 03:21:59'), Timestamp('2015-11-09 05:14:21')),\n",
       " (Timestamp('2015-11-09 21:26:12'), Timestamp('2015-11-09 23:18:44')),\n",
       " (Timestamp('2015-11-13 02:59:06'), Timestamp('2015-11-13 04:51:38')),\n",
       " (Timestamp('2015-11-16 15:31:41'), Timestamp('2015-11-16 15:57:18')),\n",
       " (Timestamp('2015-11-23 20:40:43'), Timestamp('2015-11-23 22:33:13')),\n",
       " (Timestamp('2015-11-24 05:42:01'), Timestamp('2015-11-24 06:31:03')),\n",
       " (Timestamp('2015-11-24 14:58:55'), Timestamp('2015-11-24 16:51:37')),\n",
       " (Timestamp('2015-11-25 20:55:26'), Timestamp('2015-11-25 22:48:07')),\n",
       " (Timestamp('2015-11-26 01:47:51'), Timestamp('2015-11-26 03:40:39')),\n",
       " (Timestamp('2015-11-28 04:15:31'), Timestamp('2015-11-28 06:08:06')),\n",
       " (Timestamp('2015-11-29 04:29:53'), Timestamp('2015-11-29 06:22:11')),\n",
       " (Timestamp('2015-11-29 17:44:50'), Timestamp('2015-11-30 08:52:42')),\n",
       " (Timestamp('2015-11-30 15:04:31'), Timestamp('2015-11-30 16:54:57'))]"
      ]
     },
     "execution_count": 114,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 114
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.204305Z",
     "start_time": "2024-10-23T07:13:18.189306Z"
    }
   },
   "cell_type": "code",
   "source": [
    "sorted_time_list = sorted(time_list, key=lambda tup: tup[0])\n",
    "sorted_time_list"
   ],
   "id": "f63bf83f953f2fa7",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[(Timestamp('2015-11-01 17:33:56'), Timestamp('2015-11-04 19:42:35')),\n",
       " (Timestamp('2015-11-04 22:15:38'), Timestamp('2015-11-04 23:33:34')),\n",
       " (Timestamp('2015-11-05 11:06:58'), Timestamp('2015-11-09 01:23:21')),\n",
       " (Timestamp('2015-11-09 03:21:59'), Timestamp('2015-11-09 05:14:21')),\n",
       " (Timestamp('2015-11-09 12:20:10'), Timestamp('2015-11-09 19:27:44')),\n",
       " (Timestamp('2015-11-09 21:26:12'), Timestamp('2015-11-09 23:18:44')),\n",
       " (Timestamp('2015-11-10 12:43:11'), Timestamp('2015-11-13 00:38:54')),\n",
       " (Timestamp('2015-11-13 02:59:06'), Timestamp('2015-11-13 04:51:38')),\n",
       " (Timestamp('2015-11-13 09:10:07'), Timestamp('2015-11-15 16:35:22')),\n",
       " (Timestamp('2015-11-16 15:31:41'), Timestamp('2015-11-16 15:57:18')),\n",
       " (Timestamp('2015-11-17 12:14:11'), Timestamp('2015-11-23 18:41:59')),\n",
       " (Timestamp('2015-11-23 20:40:43'), Timestamp('2015-11-23 22:33:13')),\n",
       " (Timestamp('2015-11-24 01:24:28'), Timestamp('2015-11-24 02:39:43')),\n",
       " (Timestamp('2015-11-24 05:42:01'), Timestamp('2015-11-24 06:31:03')),\n",
       " (Timestamp('2015-11-24 10:49:16'), Timestamp('2015-11-24 12:12:22')),\n",
       " (Timestamp('2015-11-24 14:58:55'), Timestamp('2015-11-24 16:51:37')),\n",
       " (Timestamp('2015-11-25 18:00:45'), Timestamp('2015-11-25 18:56:39')),\n",
       " (Timestamp('2015-11-25 20:55:26'), Timestamp('2015-11-25 22:48:07')),\n",
       " (Timestamp('2015-11-26 01:47:51'), Timestamp('2015-11-26 03:40:39')),\n",
       " (Timestamp('2015-11-26 10:10:29'), Timestamp('2015-11-28 02:16:54')),\n",
       " (Timestamp('2015-11-28 04:15:31'), Timestamp('2015-11-28 06:08:06')),\n",
       " (Timestamp('2015-11-28 11:52:25'), Timestamp('2015-11-29 02:30:52')),\n",
       " (Timestamp('2015-11-29 04:29:53'), Timestamp('2015-11-29 06:22:11')),\n",
       " (Timestamp('2015-11-29 11:48:35'), Timestamp('2015-11-29 14:36:44')),\n",
       " (Timestamp('2015-11-29 17:44:50'), Timestamp('2015-11-30 08:52:42')),\n",
       " (Timestamp('2015-11-30 10:11:49'), Timestamp('2015-11-30 13:08:09')),\n",
       " (Timestamp('2015-11-30 15:04:31'), Timestamp('2015-11-30 16:54:57')),\n",
       " (Timestamp('2015-12-01 01:09:39'), Timestamp('2015-12-01 18:59:11'))]"
      ]
     },
     "execution_count": 115,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 115
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.312518Z",
     "start_time": "2024-10-23T07:13:18.205306Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df['time'] = pd.to_datetime(df['time'])\n",
    "# 初始化新的组列\n",
    "df['new_group'] = -1\n",
    "for index, (start, end) in enumerate(sorted_time_list):\n",
    "    df['new_group'] = np.where((df['time'] >= start) & (df['time'] <= end), index + 1, df['new_group'])"
   ],
   "id": "ce084cc0da8a6674",
   "outputs": [],
   "execution_count": 116
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.328604Z",
     "start_time": "2024-10-23T07:13:18.313518Z"
    }
   },
   "cell_type": "code",
   "source": "",
   "id": "72228b86d31fbcab",
   "outputs": [],
   "execution_count": 116
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 对新组分析",
   "id": "991c543a5ae55086"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.551216Z",
     "start_time": "2024-10-23T07:13:18.329919Z"
    }
   },
   "cell_type": "code",
   "source": "group_analyse(df, col='new_group')",
   "id": "f4e882627f46c465",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAHFCAYAAADv8c1wAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAABNU0lEQVR4nO3de1zUdd738feAw4CIk0ic1kPkGkloB49ou2kK6ipWXldtS3HrvWWmpZm6ldUmVqutlbmXblZ20DIvu6+7rNQuAtMsbzyly5WotR1IO4B4QPAETPC9/3CZHAH9MRxm0Nfz8eBR8/t9Z36f+fAD33x/h7EZY4wAAABwVgG+LgAAAKAlIDQBAABYQGgCAACwgNAEAABgAaEJAADAAkITAACABYQmAAAACwhNAAAAFhCaAAAALCA0AU1ky5Ytuummm9SpUyc5HA5FRUUpKSlJ06ZNa7Jt5uTkKCMjQ0eOHKmx7vnnn9eSJUuabNu1GThwoGw2m/srJCREV155pebPn6+qqir3uLFjx+qSSy7xahtN9b4qKip09913KyYmRoGBgbrqqqvO+ZzVq1frhhtuUGxsrIKCghQWFqarr75aM2fO1L59+xq9xuZUVVWlN954Q0OGDFFERITsdrsiIyM1cuRIrVq1yuP76SsnTpxQRkaGPv74Y1+XgvMUoQloAmvWrFH//v1VWlqquXPnKisrS3/72980YMAAvfXWW0223ZycHM2aNctvQpMkXXrppdq0aZM2bdqkt956S7/61a90//33a8aMGY3y+k31vhYtWqQXX3xRjzzyiDZu3Kg33nijzrFVVVUaM2aMUlNT5XK5NGfOHGVnZ+u//uu/NHr0aL3xxhsaMGBAo9fYXMrKyvS73/1OY8aMUWRkpBYtWqR169bphRdeUGxsrG6++WatWrXK12XqxIkTmjVrFqEJTaaVrwsAzkdz585VXFycPvzwQ7Vq9cuP2a233qq5c+f6sLLGZYxRWVmZQkJC6hwTEhKifv36uR8PHz5cl19+uRYuXKgnn3xSdru9OUqtt7y8PIWEhOjee+8959i//vWvev311zVnzhw99NBDHuuGDRumGTNm6MUXXzzn65w8efKsvfSVqVOn6sMPP9TSpUv1v/7X//JYN3r0aP3pT3/SyZMnfVQd0IwMgEZ3xRVXmL59+1oe/+abb5p+/fqZ0NBQExoaaq688krz8ssvu9dnZWWZUaNGmV/96lfG4XCYLl26mLvuusscOHDAPWbmzJlGUo2v9evXm86dO9dY3rlzZ/dzS0pKzLRp08wll1xi7Ha7iY2NNffdd585duyYR52SzD333GMWLVpkLr/8cmO3282iRYvqfF/XXXedueKKK2osv/nmm40k8+OPPxpjjBkzZoxHPcYYc/LkSfPQQw951DRx4kRTXFzsHnOu91UbK69bWx9fe+21Wl+vvLzcXHTRRSYxMfGs2z1T586dzYgRI8zbb79trrrqKuNwOMyDDz5ojDFm586dZtSoUeaiiy4yDofDXHnllWbJkiUez3/ttdeMJJOfn++xfP369e7ve7Xq78Mnn3xi+vbta4KDg01sbKx59NFHzc8//3zWOgsKCozdbjdDhw61/N727t1rbrvtNnPxxReboKAgc/nll5tnnnnGVFZWnrVOY4zJz8+v0e8xY8aY0NBQ89VXX5nhw4eb0NBQ06FDBzN16lRTVlbm8bwzv8aMGWOMMaaoqMiMGzfOdOjQwQQFBZmIiAjTv39/k52dbfl9Acw0AU0gKSlJL7/8siZPnqzbbrtN11xzTZ0zKo899pieeOIJjR49WtOmTZPT6VReXp727t3rHvPNN98oKSlJd955p5xOp7777jvNmzdP1157rXbu3Cm73a4777xThw8f1oIFC/TOO+8oJiZGkpSQkKCVK1fq3//93+V0OvX8889LkhwOh6RThzSuu+46/fDDD3r44YfVo0cP7dq1S4899ph27typtWvXymazuWt599139emnn+qxxx5TdHS0IiMj692fb775Rq1atVK7du1qXW+M0Y033qiPPvpIM2bM0G9+8xt9/vnnmjlzpvtQn8PhOOv7asjrbtq0SU888YTWr1+vdevWSZK6dOlS62t+9tlnOnLkiCZMmFDvPuzYsUN79uzRo48+qri4OIWGhurLL79U//79FRkZqf/4j/9Q+/bttWzZMo0dO1b79+/XAw88UO/tSFJhYaFuvfVWPfTQQ3r88ce1Zs0aPfnkkyouLtbChQvrfN769evlcrl04403WtrOgQMH1L9/f1VUVOiJJ57QJZdcotWrV2v69On65ptv3N+n+nK5XBo1apTuuOMOTZs2TZ988omeeOIJOZ1OPfbYY4qJiVFmZqaGDRumO+64Q3feeack6eKLL5Ykpaen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eu2117RixQr16NFD999/v15//XWNGDFCjz/+uDp37qw1a9bo+eef14QJE9zncEVHR2vIkCGaM2eO2rVrp86dO+ujjz7SO++8U8/u/yIsLEydO3fWe++9p8GDBys8PFwRERFq166dBg0apLS0NF1++eXuQ6eZmZkaPXq019vDBci356ED56e33nrLpKWlma5du5o2bdoYu91uOnXqZNLT083u3btrjH/99ddN7969TXBwsGnTpo25+uqrPa4e2r17t0lOTjZhYWGmXbt25uabbzb79u2r9UqhGTNmmNjYWBMQEOBxddJ3331nUlJSTFhYWI37GR07dsw8+uijJj4+3gQFBRmn02m6d+9u7r//flNYWOgep3/dp8mquu7TdKa67tP04IMPms6dOxu73W5iYmLMhAkTPO6ndK73VRurr2v16rnTvf/++yY1NdVERUWZVq1ambCwMHPVVVeZadOmmS+++MJjbPV9mmqzc+dOk5qaapxOpwkKCjJXXnllrfeJ+uc//2lSUlJM27ZtzcUXX2wmTZpk1qxZU+d9mj7++GPTq1cv43A4TExMjHn44YdrXNVXl59//tksXbrUXH/99SY8PNy0atXKXHzxxWb48OFm+fLlHvdg2rt3r0lLSzPt27c3drvdxMfHm6efftpjjDGn7gH17//+7yY8PNw4nU5z++23m88++6zO+zSdqfreZKdbu3atufrqq43D4XDfp6msrMzcfffdpkePHqZt27YmJCTExMfHm5kzZ5rjx49bev+AMcbYjDHGZ4kNANDkBg4cqIMHD9Z5bhUAazinCQAAwAJCEwAAgAUcngMAALCAmSYAAAALCE0AAAAWEJoAAAAs4OaWjaiqqko//fSTwsLC6v1REwAAwDeMMTp69KhiY2MVEFD3fBKhqRH99NNPdX5+GAAA8G/ff//9WT9AndDUiMLCwiSdanrbtm19XM0vXC6XsrKylJKSUucn2cMTPfMOffMOffMOfas/ela70tJSdezY0f3veF0ITY2o+pBc27Zt/S40tW7dWm3btuWHxCJ65h365h365h36Vn/07OzOdWoNJ4IDAABYQGgCAACwwKehKSMjQzabzeMrOjravd4Yo4yMDMXGxiokJEQDBw7Url27PF6jvLxckyZNUkREhEJDQzVq1Cj98MMPHmOKi4uVnp4up9Mpp9Op9PR0HTlyxGPM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b96hb/VHzzydOHHC0jifh6b4+Hjl5ubqyJEjevvttzVmzBht2LDBvd5ms3mMN8bUWHamM8fUNt6bMWeaMWOGpk6d6n5cWlqqjh07KiUlRW3btj1rjc3J5XIpOztbycnJstvtvi6nRaBn3qFv3qFv3qFv9UfPald9pOhcfB6agoKC9Otf/1qS1KtXL23btk1/+9vf9OCDD0o6NQsUExPjHl9UVOSeFYqOjlZFRYWKi4s9ZpuKiorUv39/95j9+/fX2O6BAwc8XmfLli0e64uLi+VyuWrMQJ3O4XDI4XDUWG632/1yZ/TXuvwZPfMOffMOffMOfas/eubJai/87j5NxhiVl5crLi5O0dHRHlOIFRUV2rBhgzsQ9ezZU3a73WNMQUGB8vLy3GOSkpJUUlKirVu3usds2bJFJSUlHmPy8vJUUFDgHpOVlSWHw6GePXs26fsFAAAtg09nmh5++GENHz5cHTt21NGjR7VixQp9/PHHyszMlM1m05QpUzR79mx17dpVXbt21ezZs9W6dWulpaVJkpxOp+644w5NmzZN7du3V3h4uKZPn67u3btryJAhkqRu3bpp2LBhGjdunF588UVJ0l133aWRI0cqPj5ekpSSkqKEhASlp6fr6aef1uHDhzV9+nSNGzfOrw6zAQAA3/FpaNq/f7/S09NVUFAgp9OpHj16KDMzU8nJyZKkBx54QCdPntTEiRNVXFysvn37KisrS2FhYe7XeO6559SqVSvdcsstOnnypAYPHqwlS5YoMDDQPebNN9/U5MmT3VfZjRo1SgsXLnSvDwwM1Jo1azRx4kQNGDBAISEhSktL0zPPPNNMnQAAAP7Op6HplVdeOet6m82mjIwMZWRk1DkmODhYCxYs0IIFC+ocEx4ermXLlp11W506ddLq1avPOgYAAFy4/O6cJgAAAH9EaAIAALCA0AQAAGABoQkAAMACQhMAAIAFhCYAAAALCE0AAAAWEJoAAAAsIDQBAABYQGgCAACwgNAEAABgAaEJAADAAkITAACABV6FpksvvVSHDh2qsfzIkSO69NJLG1wUAACAv/EqNH333XeqrKyssby8vFw//vhjg4sCAADwN63qM/j99993//+HH34op9PpflxZWamPPvpIl1xySaMVBwAA4C/qFZpuvPFGSZLNZtOYMWM81tntdl1yySV69tlnG604AAAAf1Gv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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "max: 48850 min: 217 avg: 6568.758620689655\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAHFCAYAAADv8c1wAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAABRS0lEQVR4nO3de1xUdf4/8NcAw3ARZ7kEA4mKpiiCaXhD29QU0BQtd7ssxRe/mZmaRmKluQWYaWve9iurlpWXyC9+d8vKy5fAvJQ/UBGXTcTcLBRNEBUEVC4jfH5/+J0Tw4Ac4MAc9PV8PHjIfM6HM+/zmTPw8nMuoxFCCBARERHRHdlYuwAiIiKijoChiYiIiEgGhiYiIiIiGRiaiIiIiGRgaCIiIiKSgaGJiIiISAaGJiIiIiIZGJqIiIiIZGBoIiIiIpKBoYk6jCNHjuCJJ55A165dodPp4OXlhZCQEMTGxrbZc6anpyM+Ph7Xrl2zWLZu3Tps3ry5zZ67IaNGjYJGo5G+HB0d8eCDD2LNmjWora2V+k2dOhXdu3dv0XO01XZVV1fjpZdegre3N2xtbTFgwIAmf2bXrl2YPHkyfHx8YG9vDxcXFwwcOBBxcXHIz89XvMb2VFtbi08//RRjx46Fh4cHtFotPD09MXHiROzcudPs9bSWmzdvIj4+HgcOHFBsnZs3b4ZGo8GxY8cUWZ9Go8HLL7+syLrqrjM+Pt6sTem6G3Py5EnMmjULISEhcHZ2hkajUXT8qXUYmqhD2L17N4YPH46ysjIsX74cqamp+Otf/4oRI0Zg+/btbfa86enpSEhIUE1oAoAePXogIyMDGRkZ2L59O+6//368+uqrWLhwoSLrb6vtWr9+PT744AMsWrQIhw4dwqefftpo39raWkRHRyMiIgJGoxHLli1DWloa/v73v2PKlCn49NNPMWLECMVrbC+VlZV47LHHEB0dDU9PT6xfvx779u3Dhg0b4OPjgyeffBI7d+60dpm4efMmEhIS+Ee7HR07dgxffvkl3NzcMGbMGGuXQ/XYWbsAIjmWL18OPz8/fPPNN7Cz+223feaZZ7B8+XIrVqYsIQQqKyvh6OjYaB9HR0cMGzZMejx+/Hj06dMHiYmJWLJkCbRabXuU2mw5OTlwdHSUNSvwl7/8BVu3bsWyZcuwYMECs2Xjxo3DwoUL8cEHHzS5noqKijuOpbXMmzcP33zzDbZs2YL/+I//MFs2ZcoUvPbaa6ioqLBSdWRNUVFRiI6OBgD84x//UEV4pt9wpok6hKtXr8LDw8MsMJnY2Fjuxtu2bUNISAg6deqETp06YcCAAfj444+l5WlpaZg8eTK6dOkCBwcHPPDAA5gxYwauXLki9YmPj8drr70GAPDz85MOiR04cADdu3fHyZMncfDgQam97uGwsrIyzJ8/H35+frC3t8f999+PmJgY3Lhxw6xO06GFDRs2oG/fvtDpdNiyZUuzxkar1SI4OBg3b97E5cuXG+1XWVmJhQsXmtU0e/Zss1m0prarpevVaDT46KOPUFFRIa23sdms6upqLF++HIGBgRaBycTOzg6zZ882a+vevTsmTpyIL774AgMHDoSDgwMSEhIA3A5skydPhqurKxwcHDBgwACLcTYdfjl79qxZ+4EDBywOkYwaNQqBgYH4/vvvMWzYMDg6OuL+++/HW2+9hZqamjuOV2FhIT766COEh4dbBCaTXr16oX///tLj/Px8PPfcc/D09IROp0Pfvn2xcuVKs0N4DdUJAGfPnrUY76lTp6JTp044c+YMHnvsMXTq1Am+vr6IjY1FVVWV9HP33XcfACAhIUF63aZOnQoAuHz5Ml588UX4+vpCp9Phvvvuw4gRI7B37947br8clZWViI2NxYABA6DX6+Hm5oaQkBB89dVXjf7MBx98gN69e0On0yEgIADJyckWfQoLCzFjxgx06dIF9vb28PPzQ0JCAm7dutXqmpXS0O8zUg/ONFGHEBISgo8++ghz587Fs88+i4ceeqjRGZW3334b77zzDqZMmYLY2Fjo9Xrk5OTg3LlzUp+ff/4ZISEheOGFF6DX63H27FmsWrUKDz/8ME6cOAGtVosXXngBxcXFWLt2Lb744gt4e3sDAAICArBjxw788Y9/hF6vx7p16wAAOp0OwO1DGiNHjsSFCxfw5ptvon///jh58iTefvttnDhxAnv37oVGo5Fq+fLLL/H999/j7bffhsFggKenZ7PH5+eff4adnR1cXV0bXC6EwOOPP45vv/0WCxcuxO9//3v88MMPiIuLkw716XS6O25Xa9abkZGBd955B/v378e+ffsAAD179mxwnceOHcO1a9cwc+bMZo/D8ePHcerUKfz5z3+Gn58fnJ2dcfr0aQwfPhyenp74r//6L7i7uyMp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PqmpqdDpdAgODm7TbSbqqGpqBTJ+voqvsn9Fxs9XUVMrrF0SEVGbsupM0/z58xEREYGuXbuiqKgIS5YsQVlZGaKjo6HRaBATE4OlS5eiV69e6NWrF5YuXQonJydERkYCAPR6PaZNm4bY2Fi4u7vDzc0N8+fPR1BQkHQ1Xd++fTFu3DhMnz4dH3zwAQDgxRdfxMSJE+Hv7w8ACAsLQ0BAAKKiovD++++juLgY8+fPx/Tp03nlHFEDUnIKkLAzFwWllVKbt94BcREBGBfofYefJCLquKwami5cuIA//elPuHLlCu677z4MGzYMhw8fRrdu3QAAr7/+OioqKjBr1iyUlJRg6NChSE1NNftAvdWrV8POzg5PPfUUKioqMGbMGGzevBm2trZSn88++wxz586VrrKbNGkSEhMTpeW2trbYvXs3Zs2ahREjRsDR0RGRkZFYsWJFO40EUceRklOAmUnHUX9eqbC0EjOTjmP9cw8xOBHRXcmqoSk5OfmOyzUaDeLj4xEfH99oHwcHB6xduxZr165ttI+bmxuSkpLu+Fxdu3bFrl277tiH6F5XUyuQsDPXIjABgACgAZCwMxehAQbY2tz5gg0ioo5GVec0EZG6Hc0rNjskV58AUFBaiaN5xe1XFBFRO2FoIiLZisobD0wt6UdE1JEwNBGRbJ4uDor2IyLqSBiaiEi2IX5u8NY7oLGzlTS4fRXdED+39iyLiKhdMDQRkWy2NhrERQQAgEVwMj2OiwjgSeBEdFdiaCKiZhkX6I31zz0Eg978EJxB78DbDRDRXU1VH6NCRB3DuEBvhAYYcDSvGEXllfB0uX1IjjNMRHQ3Y2giohaxtdEgpKe7tcsgImo3PDxHREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJYGftAqhjqKkVOJpXjKLySni6OGCInxtsbTTWLouIiKjdMDRRk1JyCpCwMxcFpZVSm7feAXERARgX6G3FyoiIiNqPag7PLVu2DBqNBjExMVKbEALx8fHw8fGBo6MjRo0ahZMnT5r9XFVVFebMmQMPDw84Oztj0qRJuHDhglmfkpISREVFQa/XQ6/XIyoqCteuXTPrk5+fj4iICDg7O8PDwwNz585FdXV1W21uh5GSU4CZScfNAhMAFJZWYmbScaTkFFipMiIiovalitCUmZmJDz/8EP379zdrX758OVatWoXExERkZmbCYDAgNDQU5eXlUp+YmBjs2LEDycnJOHToEK5fv46JEyeipqZG6hMZGYns7GykpKQgJSUF2dnZiIqKkpbX1NRgwoQJuHHjBg4dOoTk5GR8/vnniI2NbfuNV7GaWoGEnbkQDSwztSXszEVNbUM9iIiI7i5WD03Xr1/Hs88+i40bN8LV1VVqF0JgzZo1WLRoEaZMmYLAwEBs2bIFN2/exLZt2wAApaWl+Pjjj7Fy5UqMHTsWAwcORFJSEk6cOIG9e/cCAE6dOoWUlBR89NFHCAkJQUhICDZu3Ihdu3bh9OnTAIDU1FTk5uYiKSkJAwcOxNixY7Fy5Ups3LgRZWVl7T8oKnE0r9hihqkuAaCgtBJH84rbrygiIiIrsfo5TbNnz8aECRMwduxYLFmyRGrPy8tDYWEhwsLCpDadToeRI0ciPT0dM2bMQFZWFoxGo1kfHx8fBAYGIj09HeHh4cjIyIBer8fQoUOlPsOGDYNer0d6ejr8/f2RkZGBwMBA+Pj4SH3Cw8NRVVWFrKwsjB49usHaq6qqUFVVJT02BSyj0Qij0Sh9X/ffjqSo9AZ0tk3PIhWV3oDR2LkdKurY46lGHE/lcCyVxfFUDseyaXLHxqqhKTk5GcePH0dmZqbFssLCQgCAl5eXWbuXlxfOnTsn9bG3tzeboTL1Mf18YWEhPD09Ldbv6elp1qf+87i6usLe3l7q05Bly5YhISHBoj01NRVOTk5mbWlpaY2uR82WD5HR6fw/sef8P9u8lro66niqFcdTORxLZXE8lcOxbNzNmzdl9bNaaDp//jxeeeUVpKamwsHBodF+Go35Ze1CCIu2+ur3aah/S/rUt3DhQsybN096XFZWBl9fX4SFhaFz59szL0ajEWlpaQgNDYVWq71j3WpTUysQvuY7XCqrbPC8Jg0Ar84O+CbmkXa7/UBHHk814ngqh2OpLI6ncjiWTZN7Ko7VQlNWVhaKiooQHBwstdXU1OC7775DYmKidL5RYWEhvL1/u6y9qKhImhUyGAyorq5GSUmJ2WxTUVERhg8fLvW5dOmSxfNfvnzZbD1HjhwxW15SUgKj0WgxA1WXTqeDTqezaNdqtRY7ZkNtaqcFsHBCP8xMOg4AZsHJFJEWTugHB519e5fWIcdTzTieyuFYKovjqRyOZePkjovVTgQfM2YMTpw4gezsbOlr0KBBePbZZ5GdnY0ePXrAYDCYTSdWV1fj4MGDUiAKDg6GVqs161NQUICcnBypT0hICEpLS3H06FGpz5EjR1BaWmrWJycnBwUFv10+n5qaCp1OZxbq7kXjAr2x/rmHYNCbzwYa9A5Y/9xDvE8TERHdM6w20+Ti4oLAwECzNmdnZ7i7u0vtMTExWLp0KXr16oVevXph6dKlcHJyQmRkJABAr9dj2rRpiI2Nhbu7O9zc3DB//nwEBQVh7NixAIC+ffti3LhxmD59Oj744AMAwIsvvoiJEyfC398fABAWFoaAgABERUXh/fffR3FxMebPn4/p06dLh9nuZeMCvREaYOAdwYmI6J5m9avn7uT1119HRUUFZs2ahZKSEgwdOhSpqalwcXGR+qxevRp2dnZ46qmnUFFRgTFjxmDz5s2wtbWV+nz22WeYO3eudJXdpEmTkJiYKC23tbXF7t27MWvWLIwYMQKOjo6IjIzEihUr2m9jVc7WRoOQnu7WLoOIiMhqVBWaDhw4YPZYo9EgPj4e8fHxjf6Mg4MD1q5di7Vr1zbax83NDUlJSXd87q5du2LXrl3NKZeIiIjuIVa/uSURERFRR8DQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkg1VD0/r169G/f3907twZnTt3RkhICP73f/9XWi6EQHx8PHx8fODo6IhRo0bh5MmTZuuoqqrCnDlz4OHhAWdnZ0yaNAkXLlww61NSUoKoqCjo9Xro9XpERUXh2rVrZn3y8/MREREBZ2dneHh4YO7cuaiurm6zbSciIqKOxaqhqUuXLnjvvfdw7NgxHDt2DI8++igmT54sBaPly5dj1apVSExMRGZmJgwGA0JDQ1FeXi6tIyYmBjt27EBycjIOHTqE69evY+LEiaipqZH6REZGIjs7GykpKUhJSUF2djaioqKk5TU1NZgwYQJu3LiBQ4cOITk5GZ9//jliY2PbbzCIiIhI3YTKuLq6io8++kjU1tYKg8Eg3nvvPWlZZWWl0Ov1YsOGDUIIIa5duya0Wq1ITk6W+vz666/CxsZGpKSkCCGEyM3NFQDE4cOHpT4ZGRkCgPjxxx+FEELs2bNH2NjYiF9//VXq89///d9Cp9OJ0tJS2bWXlpYKAGY/U11dLb788ktRXV3dzJGghnA8lcXxVA7HUlkcT+VwLJvW0N/vhthZN7L9pqamBn//+99x48YNhISEIC8vD4WFhQgLC5P66HQ6jBw5Eunp6ZgxYwaysrJgNBrN+vj4+CAwMBDp6ekIDw9HRkYG9Ho9hg4dKvUZNmwY9Ho90tPT4e/vj4yMDAQGBsLHx0fqEx4ejqqqKmRlZWH06NEN1lxVVYWqqirpcVlZGQDAaDTCaDRK39f9l1qH46ksjqdyOJbK4ngqh2PZNLljY/XQdOLECYSEhKCyshKdOnXCjh07EBAQgPT0dACAl5eXWX8vLy+cO3cOAFBYWAh7e3u4urpa9CksLJT6eHp6Wjyvp6enWZ/6z+Pq6gp7e3upT0OWLVuGhIQEi/bU1FQ4OTmZtaWlpTW6Hmo+jqeyOJ7K4Vgqi+OpHI5l427evCmrn9VDk7+/P7Kzs3Ht2jV8/vnniI6OxsGDB6XlGo3GrL8QwqKtvvp9Gurfkj71LVy4EPPmzZMel5WVwdfXF2FhYejcuTOA2+k1LS0NoaGh0Gq1d6ybmsbxVBbHUzkcS2VxPJXDsWya6UhRU6wemuzt7fHAAw8AAAYNGoTMzEz89a9/xRtvvAHg9iyQt7e31L+oqEiaFTIYDKiurkZJSYnZbFNRURGGDx8u9bl06ZLF816+fNlsPUeOHDFbXlJSAqPRaDEDVZdOp4NOp7No12q1FjtmQ23UchxPZXE8lcOxVBbHUzkcy8bJHRfV3adJCIGqqir4+fnBYDCYTSdWV1fj4MGDUiAKDg6GVqs161NQUICcnBypT0hICEpLS3H06FGpz5EjR1BaWmrWJycnBwUFBVKf1NRU6HQ6BAcHt+n2EhERUcdg1ZmmN998E+PHj4evry/Ky8uRnJyMAwcOICUlBRqNBjExMVi6dCl69eqFXr16YenSpXByckJkZCQAQK/XY9q0aYiNjYW7uzvc3Nwwf/58BAUFYezYsQCAvn37Yty4cZg+fTo++OADAMCLL76IiRMnwt/fHwAQFhaGgIAAREVF4f3330dxcTHmz5+P6dOnS4fZiIiI6N5m1dB06dIlREVFoaCgAHq9Hv3790dKSgpCQ0MBAK+//joqKiowa9YslJSUYOjQoUhNTYWLi4u0jtWrV8POzg5PPfUUKioqMGbMGGzevBm2trZSn88++wxz586VrrKbNGkSEhMTpeW2trbYvXs3Zs2ahREjRsDR0RGRkZFYsWJFO40EERERqZ1VQ9PHH398x+UajQbx8fGIj49vtI+DgwPWrl2LtWvXNtrHzc0NSUlJd3yurl27YteuXXfsQ0RERPcu1Z3TRERERKRGDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERERHJwNBEREREJANDExEREZEMLQpNPXr0wNWrVy3ar127hh49erS6KCIiIiK1aVFoOnv2LGpqaizaq6qq8Ouvv7a6KCIiIiK1sWtO56+//lr6/ptvvoFer5ce19TU4Ntvv0X37t0VK46IiIhILZoVmh5//HEAgEajQXR0tNkyrVaL7t27Y+XKlYoVR0RERKQWzQpNtbW1AAA/Pz9kZmbCw8OjTYoiIiIiUptmhSaTvLw8pesgIiIiUrUWhSYA+Pbbb/Htt9+iqKhImoEy+eSTT1pdGBEREZGatCg0JSQkYPHixRg0aBC8vb2h0WiUrouIiIhIVVoUmjZs2IDNmzcjKipK6XqIiIiIVKlF92mqrq7G8OHDla6FiIiISLVaFJpeeOEFbNu2TelaiIiIiFSrRYfnKisr8eGHH2Lv3r3o378/tFqt2fJVq1YpUhwRERGRWrQoNP3www8YMGAAACAnJ8dsGU8KJyIiortRi0LT/v37la6DiIiISNVadE4TERER0b2mRTNNo0ePvuNhuH379rW4ICIiIiI1alFoMp3PZGI0GpGdnY2cnByLD/IlIiIiuhu0KDStXr26wfb4+Hhcv369VQURERERqZGi5zQ999xz/Nw5IiIiuispGpoyMjLg4OCg5CqJiIiIVKFFh+emTJli9lgIgYKCAhw7dgxvvfWWIoURERERqUmLQpNerzd7bGNjA39/fyxevBhhYWGKFEZERESkJi0KTZs2bVK6DiIiIiJVa1FoMsnKysKpU6eg0WgQEBCAgQMHKlUXERERkaq0KDQVFRXhmWeewYEDB/C73/0OQgiUlpZi9OjRSE5Oxn333ad0nURERERW1aKr5+bMmYOysjKcPHkSxcXFKCkpQU5ODsrKyjB37lylayQiIiKyuhbNNKWkpGDv3r3o27ev1BYQEIC//e1vPBGciIiI7kotmmmqra2FVqu1aNdqtaitrW11UURERERq06LQ9Oijj+KVV17BxYsXpbZff/0Vr776KsaMGaNYcURERERq0aLQlJiYiPLycnTv3h09e/bEAw88AD8/P5SXl2Pt2rVK10hERERkdS06p8nX1xfHjx9HWloafvzxRwghEBAQgLFjxypdHxEREZEqNGumad++fQgICEBZWRkAIDQ0FHPmzMHcuXMxePBg9OvXD99//32bFEpERERkTc0KTWvWrMH06dPRuXNni2V6vR4zZszAqlWrFCuOiIiISC2aFZr+9a9/Ydy4cY0uDwsLQ1ZWVquLIiIiIlKbZoWmS5cuNXirARM7Oztcvny51UURERERqU2zQtP999+PEydONLr8hx9+gLe3d6uLIiIiIlKbZoWmxx57DG+//TYqKystllVUVCAuLg4TJ05UrDgiIiIitWjWLQf+/Oc/44svvkDv3r3x8ssvw9/fHxqNBqdOncLf/vY31NTUYNGiRW1VKxEREZHVNCs0eXl5IT09HTNnzsTChQshhAAAaDQahIeHY926dfDy8mqTQomIiIisqdk3t+zWrRv27NmDkpISnDlzBkII9OrVC66urm1RH5Gq1NQKHM0rRlF5JTxdHDDEzw22Nhprl0VERO2gRXcEBwBXV1cMHjxYyVqIVC0lpwAJO3NRUPrbOX3eegfERQRgXCAvgCAiutu16LPniO41KTkFmJl03CwwAUBhaSVmJh1HSk6BlSojIqL2wtBE1ISaWoGEnbkQDSwztSXszEVNbUM9iIjobsHQRNSEo3nFFjNMdQkABaWVOJpX3H5FERFRu2NoImpCUXnjgakl/YiIqGOyamhatmwZBg8eDBcXF3h6euLxxx/H6dOnzfoIIRAfHw8fHx84Ojpi1KhROHnypFmfqqoqzJkzBx4eHnB2dsakSZNw4cIFsz4lJSWIioqCXq+HXq9HVFQUrl27ZtYnPz8fERERcHZ2hoeHB+bOnYvq6uo22XbqODxdHBTtR0REHZNVQ9PBgwcxe/ZsHD58GGlpabh16xbCwsJw48YNqc/y5cuxatUqJCYmIjMzEwaDAaGhoSgvL5f6xMTEYMeOHUhOTsahQ4dw/fp1TJw4ETU1NVKfyMhIZGdnIyUlBSkpKcjOzkZUVJS0vKamBhMmTMCNGzdw6NAhJCcn4/PPP0dsbGz7DAap1hA/N3jrHdDYjQU0uH0V3RA/t/Ysi4iI2lmLbzmghJSUFLPHmzZtgqenJ7KysvDII49ACIE1a9Zg0aJFmDJlCgBgy5Yt8PLywrZt2zBjxgyUlpbi448/xqeffoqxY8cCAJKSkuDr64u9e/ciPDwcp06dQkpKCg4fPoyhQ4cCADZu3IiQkBCcPn0a/v7+SE1NRW5uLs6fPw8fHx8AwMqVKzF16lS8++676Ny5czuODKmJrY0GcREBmJl0HBrA7IRwU5CKiwjg/ZqIiO5yVg1N9ZWWlgIA3Nxu/489Ly8PhYWFCAsLk/rodDqMHDkS6enpmDFjBrKysmA0Gs36+Pj4IDAwEOnp6QgPD0dGRgb0er0UmABg2LBh0Ov1SE9Ph7+/PzIyMhAYGCgFJgAIDw9HVVUVsrKyMHr0aIt6q6qqUFVVJT0uKysDABiNRhiNRun7uv9S61hrPMf4e2Bd5IN4739/RGHZb+cuGTo7YMH4Phjj79EhX2Pun8rhWCqL46kcjmXT5I6NakKTEALz5s3Dww8/jMDAQABAYWEhAFh8NIuXlxfOnTsn9bG3t7e4I7mXl5f084WFhfD09LR4Tk9PT7M+9Z/H1dUV9vb2Up/6li1bhoSEBIv21NRUODk5mbWlpaU1vOHUItYaz3l96rfcQHVeFvbkWaMa5XD/VA7HUlkcT+VwLBt38+ZNWf1UE5pefvll/PDDDzh06JDFMo3G/LCHEMKirb76fRrq35I+dS1cuBDz5s2THpeVlcHX1xdhYWHS4Tyj0Yi0tDSEhoZCq9XesWZqGsdTWRxP5XAslcXxVA7HsmmmI0VNUUVomjNnDr7++mt899136NKli9RuMBgA3J4F8vb+7WMqioqKpFkhg8GA6upqlJSUmM02FRUVYfjw4VKfS5cuWTzv5cuXzdZz5MgRs+UlJSUwGo2NfgixTqeDTqezaNdqtRY7ZkNt1HIcT2VxPJXDsVQWx1M5HMvGyR0Xq149J4TAyy+/jC+++AL79u2Dn5+f2XI/Pz8YDAazKcXq6mocPHhQCkTBwcHQarVmfQoKCpCTkyP1CQkJQWlpKY4ePSr1OXLkCEpLS8365OTkoKDgt4/DSE1NhU6nQ3BwsPIbT0RERB2KVWeaZs+ejW3btuGrr76Ci4uLdO6QXq+Ho6MjNBoNYmJisHTpUvTq1Qu9evXC0qVL4eTkhMjISKnvtGnTEBsbC3d3d7i5uWH+/PkICgqSrqbr27cvxo0bh+nTp+ODDz4AALz44ouYOHEi/P39AQBhYWEICAhAVFQU3n//fRQXF2P+/PmYPn06r5wjIiIi64am9evXAwBGjRpl1r5p0yZMnToVAPD666+joqICs2bNQklJCYYOHYrU1FS4uLhI/VevXg07Ozs89dRTqKiowJgxY7B582bY2tpKfT777DPMnTtXuspu0qRJSExMlJbb2tpi9+7dmDVrFkaMGAFHR0dERkZixYoVbbT1RERE1JFYNTQJ0fQHnGo0GsTHxyM+Pr7RPg4ODli7di3Wrl3baB83NzckJSXd8bm6du2KXbt2NVkTERER3Xv42XNEREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERycDQRERERCQDQxMRERGRDAxNRERERDIwNBERkarU1AoczSsGABzNK0ZNbdOfHkHUHhiaiIhINVJyCvDwX/bh+S2ZAIDnt2Ti4b/sQ0pOgZUrI2JoIiIilUjJKcDMpOMoKK00ay8srcTMpOMMTmR1DE1ERGR1NbUCCTtz0dCBOFNbws5cHqojq2JoIiIiqzuaV2wxw1SXAFBQWimd60RkDQxNRERkdUXljQemlvQjagsMTUREZHWeLg6K9iNqCwxNRERkdUP83OCtd4CmkeUaAN56Bwzxc2vPsojMMDQREZHV2dpoEBcRAAAWwcn0OC4iALY2jcUqorbH0ERERKowLtAb6597CAa9+SE4g94B6597COMCva1UGdFtdtYugIiIyGRcoDdCAww4fKYIV04dxifRgzHsAU/OMJEqcKaJiIhUxdZGI527NMTPjYGJVIOhiYiIiEgGhiYiIiIiGRiaiIiIiGRgaCIiIiKSgaGJiIiISAaGJiIiIiIZGJqIiIiIZGBoIiIiIpKBoYmIiIhIBoYmIiIiIhkYmoiIiIhkYGgiIiIikoGhiYiIiEgGhiYiIiIiGRiaiIiIiGRgaCIiIiKSgaGJiIiISAaGJiIiIiIZGJqIiIiIZGBoIiIiIpKBoYmIiIhIBoYmIiIiIhnsrF0A3VlNrcDRvGIUlVfC08UBQ/zcYGujsXZZRERE9xyGJhVLySlAws5cFJRWSm3eegfERQRgXKC3FSsjIiK69/DwnEql5BRgZtJxs8AEAIWllZiZdBwpOQVWqoyIiOjexNCkQjW1Agk7cyEaWGZqS9iZi5rahnoQERFRW2BoUqGjecUWM0x1CQAFpZU4mlfcfkURERHd4xiaVKiovPHA1JJ+RERE1HoMTSrk6eKgaD8iIiJqPYYmFRri5wZvvQMau7GABrevohvi59aeZREREd3TGJpUyNZGg7iIAACwCE6mx3ERAbxfExERUTtiaFKpcYHeWP/cQzDozQ/BGfQOWP/cQ7xPExERUTvjzS1VbFygN0IDDLwjOBERkQowNKmcrY0GIT3drV0GERHRPY+H54iIiIhkYGgiIiIikoGhiYiIiEgGq4am7777DhEREfDx8YFGo8GXX35ptlwIgfj4ePj4+MDR0RGjRo3CyZMnzfpUVVVhzpw58PDwgLOzMyZNmoQLFy6Y9SkpKUFUVBT0ej30ej2ioqJw7do1sz75+fmIiIiAs7MzPDw8MHfuXFRXV7fFZhMREVEHZNXQdOPGDTz44INITExscPny5cuxatUqJCYmIjMzEwaDAaGhoSgvL5f6xMTEYMeOHUhOTsahQ4dw/fp1TJw4ETU1NVKfyMhIZGdnIyUlBSkpKcjOzkZUVJS0vKamBhMmTMCNGzdw6NAhJCcn4/PPP0dsbGzbbTxRK9TUCmT8fBVfZf+KjJ+v8sObiYjagVWvnhs/fjzGjx/f4DIhBNasWYNFixZhypQpAIAtW7bAy8sL27Ztw4wZM1BaWoqPP/4Yn376KcaOHQsASEpKgq+vL/bu3Yvw8HCcOnUKKSkpOHz4MIYOHQoA2LhxI0JCQnD69Gn4+/sjNTUVubm5OH/+PHx8fAAAK1euxNSpU/Huu++ic+fO7TAaRPKk5BQgYWeu2Yc6e+sdEBcRwPt3ERG1IdXeciAvLw+FhYUICwuT2nQ6HUaOHIn09HTMmDEDWVlZMBqNZn18fHwQGBiI9PR0hIeHIyMjA3q9XgpMADBs2DDo9Xqkp6fD398fGRkZCAwMlAITAISHh6OqqgpZWVkYPXp0gzVWVVWhqqpKelxWVgYAMBqNMBqN0vd1/6XWudfHc++pS3h1ezYEAJ3tb+0l1ysQ899ZWP30AIzt6yV7fff6eCqJY6ksjqdyOJZNkzs2qg1NhYWFAAAvL/M/AF5eXjh37pzUx97eHq6urhZ9TD9fWFgIT09Pi/V7enqa9an/PK6urrC3t5f6NGTZsmVISEiwaE9NTYWTk5NZW1paWqProea7l8fzL0MaX1adl4U9ec1f5708nkrjWCqL46kcjmXjbt68KaufakOTiUZjfvdrIYRFW331+zTUvyV96lu4cCHmzZsnPS4rK4Ovry/CwsKkQ3pGoxFpaWkIDQ2FVqu9Y93UtHt5PI/mFeP5LZlN9vskerDsD3O+l8dTaRxLZXE8lcOxbJrpSFFTVBuaDAYDgNuzQN7ev52nUVRUJM0KGQwGVFdXo6SkxGy2qaioCMOHD5f6XLp0yWL9ly9fNlvPkSNHzJaXlJTAaDRazEDVpdPpoNPpLNq1Wq3FjtlQG7XcvTieV27eQlVN0x+hc+XmrWaPzb04nm2FY6ksjqdyOJaNkzsuqr1Pk5+fHwwGg9l0YnV1NQ4ePCgFouDgYGi1WrM+BQUFyMnJkfqEhISgtLQUR48elfocOXIEpaWlZn1ycnJQUFAg9UlNTYVOp0NwcHCbbieRXJ4uDk13akY/IiJqHqvONF2/fh1nzpyRHufl5SE7Oxtubm7o2rUrYmJisHTpUvTq1Qu9evXC0qVL4eTkhMjISACAXq/HtGnTEBsbC3d3d7i5uWH+/PkICgqSrqbr27cvxo0bh+nTp+ODDz4AALz44ouYOHEi/P39AQBhYWEICAhAVFQU3n//fRQXF2P+/PmYPn06r5wj1Rji5wZvvQMKSyvR0A0GNAAMegfZh+aIiKh5rBqajh07ZnZlmun8oOjoaGzevBmvv/46KioqMGvWLJSUlGDo0KFITU2Fi4uL9DOrV6+GnZ0dnnrqKVRUVGDMmDHYvHkzbG1/u7Tos88+w9y5c6Wr7CZNmmR2byhbW1vs3r0bs2bNwogRI+Do6IjIyEisWLGirYeASDZbGw3iIgIwM+k4NIBZcDIdtIuLCICtTdOH8IiIqPmsGppGjRoFIRq/KZ9Go0F8fDzi4+Mb7ePg4IC1a9di7dq1jfZxc3NDUlLSHWvp2rUrdu3a1WTNRNY0LtAb6597yOI+TQbep4mIqM2p9kRwImrYuEBvhAYYcDSvGEXllfB0uX1IjjNMRERti6GJqAOytdEgpKe7tcsgIrqnqPbqOSIiIiI1YWgiIiIikoGhiYiIiEgGhiYiIiIiGRiaiIiIiGTg1XNERET11NQK3taDLDA0ERER1ZGSU2BxA1lv3kCWwMNzREREkpScAsxMOm4WmACgsLQSM5OOIyWnoJGfpHsBQxMRERFuH5JL2Jnb4Adim9oSduaiprbxj/+iuxtDExEREYCjecUWM0x1CQAFpZU4mlfcfkWRqjA0ERERASgqbzwwtaQf3X0YmoiIiAB4ujgo2o/uPrx6joiICMAQPzd46x1QWFrZ4HlNGgAG/e3bD1D7UsstIBiaiIiIANjaaBAXEYCZScehAcyCk+nPc1xEAO/X1M7UdAsIHp4jIiL6P+MCvbH+uYdg0JsfgjPoHbD+uYd4n6Z2prZbQHCmiYiIqI5xgd4IDTCo4nDQvaypW0BocPsWEKEBhnZ7bRiaiIiI6rG10SCkp7u1y7inNecWEO31WvHwHBEREamOGm8BwdBEREREqqPGW0AwNBEREZHqmG4B0djZShrcvoquPW8BwdBEREREqmO6BQQAi+BkrVtAMDQRERGRKqntFhC8eo6IiIhUS023gGBoIiIiIlVTyy0geHiOiIiISAaGJiIiIiIZGJqIiIiIZGBoIiIiIpKBoYmIiIhIBoYmIiIiIhkYmoiIiIhkYGgiIiIikoGhiYiIiEgGhiYiIiIiGRiaiIiIiGRgaCIiIiKSgaGJiIiISAaGJiIiIiIZGJqIiIiIZGBoog6jplbgaF4xAOBoXjFqaoWVKyIionsJQxN1CCk5BXj4L/vw/JZMAMDzWzLx8F/2ISWnwMqVERHRvYKhiVQvJacAM5OOo6C00qy9sLQSM5OOMzgREVG7YGgiVaupFUjYmYuGDsSZ2hJ25vJQHRERtTmGJlK1o3nFFjNMdQkABaWV0rlOREREbYWhiVStqLzxwNSSfkRERC1lZ+0CiO7E08VB0X5ERB2F6YrhovJKeLo4YIifG2xtNPdsHWrA0ESqNsTPDd56BxSWVjZ4XpMGgEF/+01MRHS3SMkpQMLOXLPTE7z1DoiLCMC4QO97rg614OE5UjVbGw3iIgIA3A5IdZkex0UE3LP/6yGiu49arhhWSx1qwtBEqjcu0Bvrn3sIBr35ITiD3gHrn3vonvzfDhHdnZS+YrilNwXmlcsN4+E56hDGBXojNMCAw2eKcOXUYXwSPRjDHvBs9gyTGo7Nq6EGUh817BdqqEEJatmOltTRnCuGQ3q633FdpkNrxdcrsHzI7ZsCu3VylHVoTck61PJ6KIGhidqFEm8aWxsNhvi5Yc8ptOjn1XBsXg01kPqoYb9QQw1KUMt2tLQOpa4YNh1aEwB0tr+1mw6tNTVLr2Qdang9lMLDc/eAmlqBjJ+v4qvsX5Hx89V2n041fQTKnzYexivJ2fjTxsPt/hEoajg2r4Ya7kbW3r9bSw37hRpqUIJatqM1dShxxbASh9aUqEMtr4eSONN0l7N2yq/7v5265P5vRwlN/QLR4PYvkNAAQ5tNGauhBjVq7Qyktfdvk/rnjcg9dKzkftHSsVR637TWoRi1vMdaW4cSVwwrcWittXWo5fVQGkPTXczagUUtbxolj8135BrUprWBR6n9W6ngZs3zRlozlm1xDo01Qqxa3mOtrcN0xfDMpOPQAGb7t9wrhpU4tNbaOtTyeiiNh+fuUmq48kEtH4GihruKq6GG+lp6VY0SWjttr9T+3dpDx63dDiX2CzXUoEQdraWW95gSdbT2imGlbgrcmjrU8noojTNNdyk1pHy1vGnUcFdxNdRQV2tmR1pLiRlIJfbv1s5UKbEdrd0v1FCDUnW0llreY0oGltAAQ4tmQZW8KXBL61DL66E0zjTVs27dOvj5+cHBwQHBwcH4/vvvrV1Si6ghsKjlTWP6BdLYW1yD24cQ2vKu4mqowcTaMwJKzEC2dv9WYqZKie1o7X6hhhqUqqO11PIeU7IOWxsNQnq6Y/KA+xHS01124FT6psAtqUMtr4fSGJrq2L59O2JiYrBo0SL885//xO9//3uMHz8e+fn51i6t2dQQWNTyplHDXcXVUAOgjsO2SgT61u7faghuQOv3CzXUoFQdraWW95ha6rD2TYHVMg5KY2iqY9WqVZg2bRpeeOEF9O3bF2vWrIGvry/Wr19v7dKaTQ2BRU1vGmv/AlFLDWqYEVAi0Ld2/1ZDcDNpzX6hhhqUrKO11PAeU1sdh954FJ9EDwYAfBI9GIfeePSeGwcl8Zym/1NdXY2srCwsWLDArD0sLAzp6ekN/kxVVRWqqqqkx2VlZQAAo9EIo9EofV/33/b09gR/vLo9G0DDVz68PcEftTW3UFvTdjWM8ffAusgH8d7//ojCst/+ABk6O2DB+D4Y4+/RrLFpzXiO8ffAqF6/R9a5Ely5XgWPTjoEd3OFrY2m3V4fa9dQVHoDOtvf9gadjTD7t24/o7Fzm9QwsIsLurnqcKms8fMtvDo7YGAXlzuOSWv2bw8nO7NxaIyHk12jNdTfjvpjKXc7gJbvF0qNZWtqULoOk5a+1639HlNbHcDt1yft1O1/2/p3fn1qGoc7kVuLRgjRse4E10YuXryI+++/H//v//0/DB8+XGpfunQptmzZgtOnT1v8THx8PBISEizat23bBicnpzatl4iIiJRx8+ZNREZGorS0FJ07N/4fRs401aPRmE/4CyEs2kwWLlyIefPmSY/Lysrg6+uLsLAwadCNRiPS0tIQGhoKrVbbdoXfQU2taDDld0RqGM+OrKZWIHzNd2azI+8MqsVbx2xQVauRZgS+iXmkzfeRvacuNToDObavl+z1tHT/3nvq0h1nqlY/PUBWHabtKLleIY2layfHZm9Hayg1lmqqg+915XAsm2Y6UtQUhqb/4+HhAVtbWxQWFpq1FxUVwcur4Te7TqeDTqezaNdqtRY7ZkNt7UULYETv9vvF2R6sOZ4dmRbAwgn9MDPpuFl7Va0G1TW348LCCf3goLNv81rG9++CsMD7W3336Jbu3+P7d4HGxrbVN2M0bYfpw6TXRw1p0YdJt4ZSY6nGOvheVw7HsnFyx4Wh6f/Y29sjODgYaWlpeOKJJ6T2tLQ0TJ482YqVESnLdHKm6T5NJgYrfPyI6VJma2nNvXDqau2HSSvB2mOptjqI2gJDUx3z5s1DVFQUBg0ahJCQEHz44YfIz8/HSy+9ZO3SiBRlCgum2ZFPoge3++yIWvCPPBHJxdBUx9NPP42rV69i8eLFKCgoQGBgIPbs2YNu3bpZuzQixalhdoSIqCNhaKpn1qxZmDVrlrXLICIiIpXhzS2JiIiIZGBoIiIiIpKBoYmIiIhIBoYmIiIiIhkYmoiIiIhkYGgiIiIikoGhiYiIiEgGhiYiIiIiGXhzSwUJcfuz0ut+WrLRaMTNmzdRVlbGD0pUAMdTWRxP5XAslcXxVA7Hsmmmv9umv+ONYWhSUHl5OQDA19fXypUQERFRc5WXl0Ov1ze6XCOailUkW21tLS5evAgXFxdoNLc/x6usrAy+vr44f/48OnfubOUKOz6Op7I4nsrhWCqL46kcjmXThBAoLy+Hj48PbGwaP3OJM00KsrGxQZcuXRpc1rlzZ+6sCuJ4KovjqRyOpbI4nsrhWN7ZnWaYTHgiOBEREZEMDE1EREREMjA0tTGdToe4uDjodDprl3JX4Hgqi+OpHI6lsjieyuFYKocnghMRERHJwJkmIiIiIhkYmoiIiIhkYGgiIiIikoGhiYiIiEgGhqY2tm7dOvj5+cHBwQHBwcH4/vvvrV1ShxQfHw+NRmP2ZTAYrF1Wh/Ddd98hIiICPj4+0Gg0+PLLL82WCyEQHx8PHx8fODo6YtSoUTh58qR1iu0AmhrPqVOnWuyrw4YNs06xKrds2TIMHjwYLi4u8PT0xOOPP47Tp0+b9eH+KY+cseS+2XoMTW1o+/btiImJwaJFi/DPf/4Tv//97zF+/Hjk5+dbu7QOqV+/figoKJC+Tpw4Ye2SOoQbN27gwQcfRGJiYoPLly9fjlWrViExMRGZmZkwGAwIDQ2VPkuRzDU1ngAwbtw4s311z5497Vhhx3Hw4EHMnj0bhw8fRlpaGm7duoWwsDDcuHFD6sP9Ux45Ywlw32w1QW1myJAh4qWXXjJr69Onj1iwYIGVKuq44uLixIMPPmjtMjo8AGLHjh3S49raWmEwGMR7770ntVVWVgq9Xi82bNhghQo7lvrjKYQQ0dHRYvLkyVapp6MrKioSAMTBgweFENw/W6P+WArBfVMJnGlqI9XV1cjKykJYWJhZe1hYGNLT061UVcf2008/wcfHB35+fnjmmWfwyy+/WLukDi8vLw+FhYVm+6lOp8PIkSO5n7bCgQMH4Onpid69e2P69OkoKiqydkkdQmlpKQDAzc0NAPfP1qg/libcN1uHoamNXLlyBTU1NfDy8jJr9/LyQmFhoZWq6riGDh2KrVu34ptvvsHGjRtRWFiI4cOH4+rVq9YurUMz7YvcT5Uzfvx4fPbZZ9i3bx9WrlyJzMxMPProo6iqqrJ2aaomhMC8efPw8MMPIzAwEAD3z5ZqaCwB7ptKsLN2AXc7jUZj9lgIYdFGTRs/frz0fVBQEEJCQtCzZ09s2bIF8+bNs2Jldwfup8p5+umnpe8DAwMxaNAgdOvWDbt378aUKVOsWJm6vfzyy/jhhx9w6NAhi2XcP5unsbHkvtl6nGlqIx4eHrC1tbX431BRUZHF/5qo+ZydnREUFISffvrJ2qV0aKYrELmfth1vb29069aN++odzJkzB19//TX279+PLl26SO3cP5uvsbFsCPfN5mNoaiP29vYIDg5GWlqaWXtaWhqGDx9uparuHlVVVTh16hS8vb2tXUqH5ufnB4PBYLafVldX4+DBg9xPFXL16lWcP3+e+2oDhBB4+eWX8cUXX2Dfvn3w8/MzW879U76mxrIh3Debj4fn2tC8efMQFRWFQYMGISQkBB9++CHy8/Px0ksvWbu0Dmf+/PmIiIhA165dUVRUhCVLlqCsrAzR0dHWLk31rl+/jjNnzkiP8/LykJ2dDTc3N3Tt2hUxMTFYunQpevXqhV69emHp0qVwcnJCZGSkFatWrzuNp5ubG+Lj4/GHP/wB3t7eOHv2LN588014eHjgiSeesGLV6jR79mxs27YNX331FVxcXKQZJb1eD0dHR2g0Gu6fMjU1ltevX+e+qQQrXrl3T/jb3/4munXrJuzt7cVDDz1kdvknyff0008Lb29vodVqhY+Pj5gyZYo4efKktcvqEPbv3y8AWHxFR0cLIW5f1h0XFycMBoPQ6XTikUceESdOnLBu0Sp2p/G8efOmCAsLE/fdd5/QarWia9euIjo6WuTn51u7bFVqaBwBiE2bNkl9uH/K09RYct9UhkYIIdozpBERERF1RDyniYiIiEgGhiYiIiIiGRiaiIiIiGRgaCIiIiKSgaGJiIiISAaGJiIiIiIZGJqIiIiIZGBoIiIiIpKBoYmI7mqFhYV45ZVX8MADD8DBwQFeXl54+OGHsWHDBty8edPa5RFRB8LPniOiu9Yvv/yCESNG4He/+x2WLl2KoKAg3Lp1C//+97/xySefwMfHB5MmTbL4OaPRCK1Wa4WKiUjNONNERHetWbNmwc7ODseOHcNTTz2Fvn37IigoCH/4wx+we/duREREAAA0Gg02bNiAyZMnw9nZGUuWLAEArF+/Hj179oS9vT38/f3x6aefSus+e/YsNBoNsrOzpbZr165Bo9HgwIEDAIADBw5Ao9Fg9+7dePDBB+Hg4IChQ4fixIkT7TYGRKQchiYiuitdvXoVqampmD17NpydnRvso9FopO/j4uIwefJknDhxAs8//zx27NiBV155BbGxscjJycGMGTPwn//5n9i/f3+za3nttdewYsUKZGZmwtPTE5MmTYLRaGzxthGRdTA0EdFd6cyZMxBCwN/f36zdw8MDnTp1QqdOnfDGG29I7ZGRkXj++efRo0cPdOvWDStWrMDUqVMxa9Ys9O7dG/PmzcOUKVOwYsWKZtcSFxeH0NBQBAUFYcuWLbh06RJ27NjR6m0kovbF0EREd7W6s0kAcPToUWRnZ6Nfv36oqqqS2gcNGmTW79SpUxgxYoRZ24gRI3Dq1Klm1xASEiJ97+bmBn9//xath4isiyeCE9Fd6YEHHoBGo8GPP/5o1t6jRw8AgKOjo1l7Q4fw6gcuIYTUZmNjI7WZNOeQW/11E5H6caaJiO5K7u7uCA0NRWJiIm7cuNHsn+/bty8OHTpk1paeno6+ffsCAO677z4AQEFBgbS87knhdR0+fFj6vqSkBP/+97/Rp0+fZtdERNbFmSYiumutW7cOI0aMwKBBgxAfH4/+/fvDxsYGmZmZ+PHHHxEcHNzoz7722mt46qmn8NBDD2HMmDHYuXMnvvjiC+zduxfA7ZmqYcOG4b333kP37t1x5coV/PnPf25wXYsXL4a7uzu8vLywaNEieHh44PHHH2+LTSaitiSIiO5iFy9eFC+//LLw8/MTWq1WdOrUSQwZMkS8//774saNG0IIIQCIHTt2WPzsunXrRI8ePYRWqxW9e/cWW7duNVuem5srhg0bJhwdHcWAAQNEamqqACD2798vhBBi//79AoDYuXOn6Nevn7C3txeDBw8W2dnZbb3ZRNQGNELUOSBPRESKOXDgAEaPHo2SkhL87ne/s3Y5RNRKPKeJiIiISAaGJiIiIiIZeHiOiIiISAbONBERERHJwNBEREREJANDExEREZEMDE1EREREMjA0EREREcnA0EREREQkA0MTERERkQwMTUREREQyMDQRERERyfD/AXnATgrYHv3+AAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "max: 48850 min: 217 avg: 6413.142857142857\n"
     ]
    }
   ],
   "execution_count": 117
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.566978Z",
     "start_time": "2024-10-23T07:13:18.552881Z"
    }
   },
   "cell_type": "code",
   "source": [
    "group_counts = df['new_group'].value_counts()\n",
    "print(group_counts)\n",
    "# show_group_bar(group_counts, bins = [100, 200, 300, 500, 1000, 5000, 10000, 20000, 30000, 40000, 50000])"
   ],
   "id": "96622b4e5b177fde",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "new_group\n",
      " 11    48850\n",
      " 3     40083\n",
      " 7     20717\n",
      " 20    17021\n",
      " 1     12020\n",
      "-1     10926\n",
      " 9      9716\n",
      " 22     7308\n",
      " 28     6271\n",
      " 5      2437\n",
      " 26     1474\n",
      " 24     1447\n",
      " 25     1054\n",
      " 8       951\n",
      " 6       951\n",
      " 27      951\n",
      " 16      951\n",
      " 18      951\n",
      " 21      951\n",
      " 23      951\n",
      " 4       747\n",
      " 2       659\n",
      " 13      637\n",
      " 15      477\n",
      " 17      472\n",
      " 19      456\n",
      " 12      434\n",
      " 14      414\n",
      " 10      217\n",
      "Name: count, dtype: int64\n"
     ]
    }
   ],
   "execution_count": 118
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.583058Z",
     "start_time": "2024-10-23T07:13:18.569038Z"
    }
   },
   "cell_type": "code",
   "source": [
    "failure_df = df[df['label'] == 1]\n",
    "group_counts = failure_df['new_group'].value_counts()\n",
    "print(group_counts)"
   ],
   "id": "5aab97da5bd81f1f",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "new_group\n",
      "25    1054\n",
      "6      951\n",
      "8      951\n",
      "16     951\n",
      "18     951\n",
      "21     951\n",
      "23     951\n",
      "27     951\n",
      "4      747\n",
      "2      659\n",
      "19     456\n",
      "12     434\n",
      "14     414\n",
      "10     217\n",
      "Name: count, dtype: int64\n"
     ]
    }
   ],
   "execution_count": 119
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:51:23.194538Z",
     "start_time": "2024-10-23T07:51:23.183534Z"
    }
   },
   "cell_type": "code",
   "source": [
    "group_means = df.groupby('new_group')['label'].mean()\n",
    "print(group_means)"
   ],
   "id": "ac42493a1e326de9",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "new_group\n",
      "-1    -1.0\n",
      " 1     0.0\n",
      " 2     1.0\n",
      " 3     0.0\n",
      " 4     1.0\n",
      " 5     0.0\n",
      " 6     1.0\n",
      " 7     0.0\n",
      " 8     1.0\n",
      " 9     0.0\n",
      " 10    1.0\n",
      " 11    0.0\n",
      " 12    1.0\n",
      " 13    0.0\n",
      " 14    1.0\n",
      " 15    0.0\n",
      " 16    1.0\n",
      " 17    0.0\n",
      " 18    1.0\n",
      " 19    1.0\n",
      " 20    0.0\n",
      " 21    1.0\n",
      " 22    0.0\n",
      " 23    1.0\n",
      " 24    0.0\n",
      " 25    1.0\n",
      " 26    0.0\n",
      " 27    1.0\n",
      " 28    0.0\n",
      "Name: label, dtype: float64\n"
     ]
    }
   ],
   "execution_count": 122
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T07:13:18.599058Z",
     "start_time": "2024-10-23T07:13:18.585058Z"
    }
   },
   "cell_type": "code",
   "source": [
    "save = False\n",
    "if save:\n",
    "    df.to_csv(save_file, index=False)"
   ],
   "id": "d25a352f83455c34",
   "outputs": [],
   "execution_count": 120
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 一些代码试验",
   "id": "fa455a98a8e6f310"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T08:13:12.056998Z",
     "start_time": "2024-10-23T08:13:12.028043Z"
    }
   },
   "cell_type": "code",
   "source": [
    "data_df = df[df['label'] != -1]\n",
    "grouped = data_df.groupby('new_group')"
   ],
   "id": "cba48677e4bf3c48",
   "outputs": [],
   "execution_count": 133
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T08:13:12.477359Z",
     "start_time": "2024-10-23T08:13:12.472359Z"
    }
   },
   "cell_type": "code",
   "source": [
    "window_size = 1000\n",
    "step_size = 1000\n",
    "segments = []"
   ],
   "id": "b64e575cdfd909ca",
   "outputs": [],
   "execution_count": 134
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T08:13:12.882926Z",
     "start_time": "2024-10-23T08:13:12.861798Z"
    }
   },
   "cell_type": "code",
   "source": [
    "for group_name, group_data in grouped:\n",
    "    print(group_name)\n",
    "    print(len(group_data))\n",
    "    \n",
    "    for start in range(0, len(group_data) - window_size + 1, step_size):\n",
    "        end = start + window_size\n",
    "        segment = df.iloc[start:end]\n",
    "        segments.append(segment)\n",
    "        \n",
    "    break"
   ],
   "id": "3e4ff29c79483593",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1\n",
      "12020\n"
     ]
    }
   ],
   "execution_count": 135
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T08:17:21.442168Z",
     "start_time": "2024-10-23T08:17:21.426168Z"
    }
   },
   "cell_type": "code",
   "source": [
    "print(len(segments))\n",
    "print(type(segments[0]))"
   ],
   "id": "690affb4a866f3db",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "12\n",
      "<class 'pandas.core.frame.DataFrame'>\n"
     ]
    }
   ],
   "execution_count": 138
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T08:13:13.836010Z",
     "start_time": "2024-10-23T08:13:13.787010Z"
    }
   },
   "cell_type": "code",
   "source": [
    "for i, segment in enumerate(segments):\n",
    "    print(f\"Segment {i + 1}:\\n{segment}\\n\")"
   ],
   "id": "12d4dc5943d9f0a3",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Segment 1:\n",
      "                   time  wind_speed  generator_speed     power  \\\n",
      "0   2015-11-01 17:33:56    2.671346         1.316661  2.571868   \n",
      "1   2015-11-01 17:34:03    3.058582         1.293394  2.537818   \n",
      "2   2015-11-01 17:34:10    3.279860         1.187033  2.551855   \n",
      "3   2015-11-01 17:34:17    3.231917         1.270128  2.549840   \n",
      "4   2015-11-01 17:34:24    3.364684         1.329956  2.557854   \n",
      "..                  ...         ...              ...       ...   \n",
      "995 2015-11-01 19:31:43    3.925254         1.223595  2.581875   \n",
      "996 2015-11-01 19:31:50    4.028517         1.306690  2.593896   \n",
      "997 2015-11-01 19:31:57    3.578586         1.177061  2.563854   \n",
      "998 2015-11-01 19:32:04    3.589649         1.223595  2.565869   \n",
      "999 2015-11-01 19:32:11    3.479011         1.250185  2.589889   \n",
      "\n",
      "     wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "0         -0.786604            -0.985671      0.235157  -0.143615   \n",
      "1         -0.924712            -0.712099      0.235157  -0.108731   \n",
      "2         -0.962692            -1.054064      0.235157  -0.108731   \n",
      "3         -0.826310            -0.655104      0.235157  -0.108731   \n",
      "4         -0.867742            -1.336502      0.235157  -0.108731   \n",
      "..              ...                  ...           ...        ...   \n",
      "995        1.562968             0.650696      0.235157  -0.038964   \n",
      "996        1.487008             1.611998      0.235157  -0.038964   \n",
      "997        1.487008             0.897671      0.235157  -0.038964   \n",
      "998        1.360984             0.226406      0.235157  -0.038964   \n",
      "999        1.283298             0.745686      0.235157  -0.038964   \n",
      "\n",
      "     pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "0        4.653333      4.640000  ...  0.686099        0.769231   \n",
      "1        6.395556      6.417778  ...  0.686099        0.769231   \n",
      "2        5.417778      5.435556  ...  0.686099        0.769231   \n",
      "3        5.728889      5.728889  ...  0.686099        0.769231   \n",
      "4        5.986667      5.982222  ...  0.686099        0.769231   \n",
      "..            ...           ...  ...       ...             ...   \n",
      "995      5.826667      5.857778  ... -0.002291        0.892308   \n",
      "996      6.266667      6.271111  ... -0.002291        0.892308   \n",
      "997      5.377778      5.377778  ... -0.002291        0.892308   \n",
      "998      5.711111      5.706667  ... -0.002291        0.892308   \n",
      "999      5.360000      5.360000  ... -0.002291        0.892308   \n",
      "\n",
      "     pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "0          1.000000        0.923077           0.08          -0.80   \n",
      "1          1.000000        0.923077           0.68           1.04   \n",
      "2          1.013846        0.923077           1.00           1.44   \n",
      "3          1.046154        0.923077           0.24           1.24   \n",
      "4          1.046154        0.923077           0.88          -1.32   \n",
      "..              ...             ...            ...            ...   \n",
      "995        0.875385        0.892308           0.68          -2.00   \n",
      "996        0.875385        0.892308           0.92           2.12   \n",
      "997        0.875385        0.892308           1.28           1.64   \n",
      "998        0.875385        0.892308           1.20           0.92   \n",
      "999        0.875385        0.892308           1.28           0.24   \n",
      "\n",
      "     pitch3_ng5_DC  group  label  new_group  \n",
      "0             0.60      1      0          1  \n",
      "1             0.76      1      0          1  \n",
      "2             0.88      1      0          1  \n",
      "3             1.36      1      0          1  \n",
      "4            -1.48      1      0          1  \n",
      "..             ...    ...    ...        ...  \n",
      "995           1.16     10      0          1  \n",
      "996           1.32     10      0          1  \n",
      "997          -2.16     10      0          1  \n",
      "998           0.68     10      0          1  \n",
      "999           0.80     10      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 2:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "1000 2015-11-01 19:32:18    3.571210         1.250185  2.581875   \n",
      "1001 2015-11-01 19:32:28    3.198725         1.293394  2.591904   \n",
      "1002 2015-11-01 19:32:35    3.220853         1.280099  2.589889   \n",
      "1003 2015-11-01 19:32:42    3.438443         1.300042  2.579883   \n",
      "1004 2015-11-01 19:32:49    3.150782         1.329956  2.579883   \n",
      "...                  ...         ...              ...       ...   \n",
      "1995 2015-11-01 21:49:08    2.073895         1.220271  2.589889   \n",
      "1996 2015-11-01 21:49:15    1.930065         1.300042  2.585882   \n",
      "1997 2015-11-01 21:49:22    2.037016         1.270128  2.589889   \n",
      "1998 2015-11-01 21:49:29    1.730914         1.243537  2.479748   \n",
      "1999 2015-11-01 21:49:36    2.191910         1.349899  2.587897   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "1000        1.226328             1.243435      0.235157  -0.038964   \n",
      "1001        1.312646             1.363757      0.235157  -0.038964   \n",
      "1002        1.312646             1.115515      0.235157  -0.038964   \n",
      "1003        1.323004             0.221340      0.235157  -0.004080   \n",
      "1004        1.202159             0.791282      0.235157  -0.004080   \n",
      "...              ...                  ...           ...        ...   \n",
      "1995        1.238413             0.098485      0.211908  -0.004080   \n",
      "1996        1.065777             0.938200      0.211908  -0.004080   \n",
      "1997        0.944932             0.056690      0.211908  -0.004080   \n",
      "1998        0.511617            -0.885614      0.211908  -0.004080   \n",
      "1999        0.409762             1.185175      0.217732   0.135455   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "1000      5.671111      5.706667  ... -0.002291        0.892308   \n",
      "1001      5.213333      5.248889  ... -0.023326        0.892308   \n",
      "1002      4.853333      4.862222  ... -0.002291        0.892308   \n",
      "1003      5.302222      5.302222  ... -0.023326        0.892308   \n",
      "1004      5.746667      5.764444  ... -0.002291        0.892308   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "1995      0.488889      0.528889  ... -0.214545        0.969231   \n",
      "1996      0.613333      0.622222  ... -0.214545        0.969231   \n",
      "1997      1.057778      1.062222  ... -0.214545        0.969231   \n",
      "1998      0.457778      0.488889  ... -0.214545        0.969231   \n",
      "1999      1.480000      1.493333  ... -0.193511        0.969231   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "1000        0.860000        0.892308           1.88           1.36   \n",
      "1001        0.875385        0.892308           1.24           1.40   \n",
      "1002        0.875385        0.892308           1.20           0.64   \n",
      "1003        0.860000        0.892308           1.00           0.44   \n",
      "1004        0.860000        0.892308           1.44           0.64   \n",
      "...              ...             ...            ...            ...   \n",
      "1995        0.753846        0.936923           1.84           3.60   \n",
      "1996        0.753846        0.936923           3.36          -2.12   \n",
      "1997        0.753846        0.936923           0.52           0.68   \n",
      "1998        0.753846        0.936923           0.56          -1.04   \n",
      "1999        0.738462        0.936923           1.28           0.44   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "1000          -0.88     10      0          1  \n",
      "1001           0.12     10      0          1  \n",
      "1002           0.64     11      0          1  \n",
      "1003           1.16     11      0          1  \n",
      "1004           0.88     11      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "1995           1.48     20      0          1  \n",
      "1996          -0.68     20      0          1  \n",
      "1997          -2.16     20      0          1  \n",
      "1998           0.28     20      0          1  \n",
      "1999           0.88     20      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 3:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "2000 2015-11-01 21:49:46    2.088647         1.286747  2.581875   \n",
      "2001 2015-11-01 21:49:53    1.871057         1.223595  2.581875   \n",
      "2002 2015-11-01 21:49:56    1.682971         1.187033  2.571868   \n",
      "2003 2015-11-01 21:50:00    1.601836         1.206976  2.369606   \n",
      "2004 2015-11-01 21:50:07    1.904249         1.280099  2.579883   \n",
      "...                  ...         ...              ...       ...   \n",
      "2995 2015-11-02 17:08:33    3.504826         1.263480  2.559846   \n",
      "2996 2015-11-02 17:08:40    3.593337         1.213623  2.555839   \n",
      "2997 2015-11-02 17:08:47    3.951070         1.220271  2.547848   \n",
      "2998 2015-11-02 17:08:54    3.442131         1.127204  2.537818   \n",
      "2999 2015-11-02 17:09:01    3.383123         1.200328  2.551855   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "2000        0.428751             0.636764      0.211908  -0.004080   \n",
      "2001        0.285464            -0.130758      0.211908  -0.004080   \n",
      "2002        0.261295            -0.219416      0.211908  -0.004080   \n",
      "2003        0.178430            -0.829887      0.211908  -0.004080   \n",
      "2004        0.242305             0.508844      0.211908  -0.004080   \n",
      "...              ...                  ...           ...        ...   \n",
      "2995       -0.593252            -0.644972      0.153665   0.344757   \n",
      "2996       -0.698559            -0.936276      0.142064  -0.004080   \n",
      "2997       -0.646769            -0.132024      0.136239  -0.143615   \n",
      "2998       -0.539735             0.231472      0.142064  -0.004080   \n",
      "2999       -0.463775            -0.348602      0.142064  -0.004080   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "2000      2.560000      2.568889  ... -0.214545        0.969231   \n",
      "2001      1.880000      1.871111  ... -0.193511        0.969231   \n",
      "2002      0.777778      0.764444  ... -0.231755        0.969231   \n",
      "2003      0.360000      0.368889  ... -0.214545        0.969231   \n",
      "2004      1.546667      1.551111  ... -0.214545        0.969231   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "2995      6.506667      6.506667  ... -0.883814        1.400000   \n",
      "2996      5.973333      5.973333  ... -0.883814        1.400000   \n",
      "2997      6.266667      6.231111  ... -0.901023        1.384615   \n",
      "2998      5.595556      5.604444  ... -0.901023        1.384615   \n",
      "2999      5.155556      5.191111  ... -0.883814        1.384615   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "2000        0.738462        0.936923           1.24           1.36   \n",
      "2001        0.738462        0.936923           1.84           1.08   \n",
      "2002        0.738462        0.936923           1.48           0.64   \n",
      "2003        0.738462        0.936923           3.48           2.76   \n",
      "2004        0.738462        0.936923           1.16           0.80   \n",
      "...              ...             ...            ...            ...   \n",
      "2995        1.153846        0.969231           1.04           2.84   \n",
      "2996        1.167692        0.969231           0.44           0.12   \n",
      "2997        1.167692        0.969231           0.76          -1.44   \n",
      "2998        1.183077        0.969231           3.08          -0.56   \n",
      "2999        1.200000        0.969231           3.00          -1.28   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "2000           1.64     20      0          1  \n",
      "2001           1.24     20      0          1  \n",
      "2002           1.44     20      0          1  \n",
      "2003           0.56     20      0          1  \n",
      "2004           1.40     20      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "2995           1.08     30      0          1  \n",
      "2996           1.12     30      0          1  \n",
      "2997           1.00     30      0          1  \n",
      "2998           0.48     30      0          1  \n",
      "2999           0.40     30      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 4:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "3000 2015-11-02 17:09:08    3.279860         1.300042  2.563854   \n",
      "3001 2015-11-02 17:09:18    4.010078         1.336604  2.557854   \n",
      "3002 2015-11-02 17:09:25    3.976886         1.273452  2.559846   \n",
      "3003 2015-11-02 17:09:32    4.028517         1.273452  2.571868   \n",
      "3004 2015-11-02 17:09:39    3.807240         1.223595  2.567861   \n",
      "...                  ...         ...              ...       ...   \n",
      "3995 2015-11-02 19:07:18    4.474761         1.263480  2.533811   \n",
      "3996 2015-11-02 19:07:25    4.109653         1.230242  2.531819   \n",
      "3997 2015-11-02 19:07:32    4.102277         1.243537  2.541825   \n",
      "3998 2015-11-02 19:07:39    3.844119         1.236890  2.541825   \n",
      "3999 2015-11-02 19:07:46    4.183412         1.293394  2.541825   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "3000       -0.532829            -1.256710      0.142064   -0.00408   \n",
      "3001       -0.553546            -0.411929      0.142064   -0.00408   \n",
      "3002       -0.600157            -0.423328      0.142064   -0.00408   \n",
      "3003       -0.677843            -0.557581      0.142064   -0.00408   \n",
      "3004       -0.645042            -0.537316      0.142064   -0.00408   \n",
      "...              ...                  ...           ...        ...   \n",
      "3995       -0.520745            -0.456258      0.142064   -0.00408   \n",
      "3996       -0.501755            -0.006637      0.142064   -0.00408   \n",
      "3997       -0.486218            -0.257412      0.142064   -0.00408   \n",
      "3998       -0.603610            -0.853951      0.142064   -0.00408   \n",
      "3999       -0.503481             0.179544      0.142064   -0.00408   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "3000      5.764444      5.764444  ... -0.883814        1.384615   \n",
      "3001      6.582222      6.568889  ... -0.883814        1.384615   \n",
      "3002      6.835556      6.808889  ... -0.901023        1.384615   \n",
      "3003      6.746667      6.768889  ... -0.883814        1.384615   \n",
      "3004      6.697778      6.693333  ... -0.883814        1.384615   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "3995      7.555556      7.524444  ... -0.922058        0.907692   \n",
      "3996      7.351111      7.342222  ... -0.941179        0.907692   \n",
      "3997      6.986667      6.986667  ... -0.922058        0.907692   \n",
      "3998      6.675556      6.693333  ... -0.922058        0.907692   \n",
      "3999      6.991111      7.026667  ... -0.922058        0.892308   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "3000        1.200000        0.952308           1.44          -0.68   \n",
      "3001        1.215385        0.936923           0.88           2.84   \n",
      "3002        1.230769        0.936923           1.20           2.84   \n",
      "3003        1.230769        0.936923           0.32           3.04   \n",
      "3004        1.246154        0.936923           0.20           3.08   \n",
      "...              ...             ...            ...            ...   \n",
      "3995        0.661538        0.583077           0.68           1.04   \n",
      "3996        0.661538        0.583077           0.40           1.40   \n",
      "3997        0.661538        0.583077           3.12           2.84   \n",
      "3998        0.644615        0.583077           0.92           1.40   \n",
      "3999        0.644615        0.583077           1.48           1.44   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "3000           0.48     30      0          1  \n",
      "3001           3.04     30      0          1  \n",
      "3002           3.04     30      0          1  \n",
      "3003           0.80     30      0          1  \n",
      "3004           1.04     30      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "3995           1.00     40      0          1  \n",
      "3996           2.00     40      0          1  \n",
      "3997           1.04     40      0          1  \n",
      "3998           0.52     40      0          1  \n",
      "3999           1.76     40      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 5:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "4000 2015-11-02 19:07:56    3.932630         1.236890  2.533811   \n",
      "4001 2015-11-02 19:08:03    3.567522         1.280099  2.549840   \n",
      "4002 2015-11-02 19:08:10    4.006390         1.220271  2.547848   \n",
      "4003 2015-11-02 19:08:17    3.711352         1.306690  2.543841   \n",
      "4004 2015-11-02 19:08:24    3.467947         1.329956  2.531819   \n",
      "...                  ...         ...              ...       ...   \n",
      "4995 2015-11-02 21:06:00    3.128654         1.349899  2.533811   \n",
      "4996 2015-11-02 21:06:07    3.862559         1.243537  2.533811   \n",
      "4997 2015-11-02 21:06:14    2.900000         1.223595  2.529827   \n",
      "4998 2015-11-02 21:06:21    3.154469         1.250185  2.527812   \n",
      "4999 2015-11-02 21:06:31    2.822553         1.236890  2.547848   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "4000       -0.403352            -0.268810      0.136239  -0.143615   \n",
      "4001       -0.517292            -0.267544      0.142064  -0.004080   \n",
      "4002       -0.589799            -0.500587      0.142064  -0.004080   \n",
      "4003       -0.634684            -1.064196      0.136239  -0.143615   \n",
      "4004       -0.567356             0.225139      0.142064  -0.004080   \n",
      "...              ...                  ...           ...        ...   \n",
      "4995        1.217697             1.137046      0.072172  -0.038964   \n",
      "4996        1.271214             0.669694      0.072172  -0.038964   \n",
      "4997        1.198707            -0.319472      0.083821   0.274990   \n",
      "4998        0.948385             0.432851      0.072172  -0.038964   \n",
      "4999        0.843077             0.979996      0.072172  -0.038964   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "4000      6.786667      6.822222  ... -0.922058        0.892308   \n",
      "4001      6.506667      6.493333  ... -0.922058        0.892308   \n",
      "4002      6.231111      6.248889  ... -0.922058        0.892308   \n",
      "4003      6.297778      6.297778  ... -0.922058        0.892308   \n",
      "4004      6.764444      6.760000  ... -0.922058        0.892308   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "4995      5.195556      5.137778  ... -0.922058        0.600000   \n",
      "4996      5.253333      5.271111  ... -0.922058        0.600000   \n",
      "4997      4.191111      4.208889  ... -0.922058        0.600000   \n",
      "4998      4.844444      4.835556  ... -0.922058        0.600000   \n",
      "4999      3.764444      3.786667  ... -0.922058        0.600000   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "4000        0.644615        0.583077           1.00           2.84   \n",
      "4001        0.644615        0.583077           1.04           1.68   \n",
      "4002        0.629231        0.583077           1.48           2.36   \n",
      "4003        0.644615        0.583077           1.40           0.24   \n",
      "4004        0.629231        0.600000           0.64           0.68   \n",
      "...              ...             ...            ...            ...   \n",
      "4995        0.676923        0.875385           1.16           1.56   \n",
      "4996        0.676923        0.875385           0.60           1.48   \n",
      "4997        0.661538        0.860000           3.16           1.36   \n",
      "4998        0.661538        0.860000           1.44           1.08   \n",
      "4999        0.661538        0.860000           1.40           2.20   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "4000           1.72     40      0          1  \n",
      "4001           2.96     40      0          1  \n",
      "4002           0.96     40      0          1  \n",
      "4003           1.16     40      0          1  \n",
      "4004           0.92     40      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "4995           0.76     49      0          1  \n",
      "4996           0.60     49      0          1  \n",
      "4997           2.40     49      0          1  \n",
      "4998           0.64     49      0          1  \n",
      "4999           1.00     49      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 6:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "5000 2015-11-02 21:06:38    3.183973         1.263480  2.529827   \n",
      "5001 2015-11-02 21:06:45    2.560707         1.273452  2.541825   \n",
      "5002 2015-11-02 21:06:52    3.851495         1.336604  2.503791   \n",
      "5003 2015-11-02 21:06:59    3.124966         1.230242  2.531819   \n",
      "5004 2015-11-02 21:07:06    3.324116         1.306690  2.547848   \n",
      "...                  ...         ...              ...       ...   \n",
      "5995 2015-11-02 23:29:23    2.866808         1.230242  2.537818   \n",
      "5996 2015-11-02 23:29:30    2.520139         1.263480  2.541825   \n",
      "5997 2015-11-02 23:29:37    2.719289         1.263480  2.537818   \n",
      "5998 2015-11-02 23:29:44    2.722977         1.243537  2.529827   \n",
      "5999 2015-11-02 23:29:51    2.391060         1.263480  2.533811   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "5000        0.908679             1.430883      0.072172  -0.038964   \n",
      "5001        1.102031             0.830544      0.072172  -0.038964   \n",
      "5002        1.089946             0.285933      0.072172  -0.038964   \n",
      "5003        0.848256             0.211207      0.072172  -0.038964   \n",
      "5004        0.730864            -0.068698      0.072172  -0.038964   \n",
      "...              ...                  ...           ...        ...   \n",
      "5995       -0.070166             0.843210      0.031449   0.100571   \n",
      "5996       -0.013196            -0.582912      0.025625  -0.038964   \n",
      "5997       -0.058081            -0.148489      0.031449   0.100571   \n",
      "5998       -0.004564            -0.113026      0.025625  -0.038964   \n",
      "5999        0.014426            -0.246013      0.025625  -0.038964   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "5000      4.302222      4.342222  ... -0.922058        0.600000   \n",
      "5001      4.040000      4.026667  ... -0.941179        0.600000   \n",
      "5002      5.764444      5.733333  ... -0.941179        0.600000   \n",
      "5003      4.951111      4.968889  ... -0.941179        0.600000   \n",
      "5004      5.142222      5.137778  ... -0.941179        0.600000   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "5995      3.448889      3.502222  ... -1.092243        1.106154   \n",
      "5996      3.475556      3.493333  ... -1.092243        1.090769   \n",
      "5997      3.262222      3.288889  ... -1.092243        1.090769   \n",
      "5998      3.502222      3.493333  ... -1.092243        1.090769   \n",
      "5999      3.457778      3.457778  ... -1.075033        1.090769   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "5000        0.661538        0.860000           1.76          -1.28   \n",
      "5001        0.661538        0.860000           1.56           0.88   \n",
      "5002        0.661538        0.860000           1.92           0.08   \n",
      "5003        0.661538        0.860000           0.48           1.52   \n",
      "5004        0.661538        0.860000           0.28           2.72   \n",
      "...              ...             ...            ...            ...   \n",
      "5995        0.615385        0.583077           1.20           0.72   \n",
      "5996        0.615385        0.600000           3.24           3.04   \n",
      "5997        0.615385        0.583077           3.04          -0.60   \n",
      "5998        0.615385        0.600000           0.24           1.44   \n",
      "5999        0.615385        0.583077           0.72           1.36   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "5000          -1.64     50      0          1  \n",
      "5001           4.12     50      0          1  \n",
      "5002           3.20     50      0          1  \n",
      "5003          -1.20     50      0          1  \n",
      "5004           1.64     50      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "5995           1.12     58      0          1  \n",
      "5996           1.48     58      0          1  \n",
      "5997           1.24     58      0          1  \n",
      "5998          -1.16     58      0          1  \n",
      "5999           0.76     58      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 7:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "6000 2015-11-02 23:29:58    2.914752         1.250185  2.531819   \n",
      "6001 2015-11-02 23:30:01    2.409500         1.187033  2.531819   \n",
      "6002 2015-11-02 23:30:08    2.623402         1.243537  2.541825   \n",
      "6003 2015-11-02 23:30:15    2.269358         1.200328  2.527812   \n",
      "6004 2015-11-02 23:30:22    2.398436         1.127204  2.419686   \n",
      "...                  ...         ...              ...       ...   \n",
      "6995 2015-11-03 12:32:51    1.277295         1.293394  1.528572   \n",
      "6996 2015-11-03 12:32:58    1.395310         1.263480  1.652727   \n",
      "6997 2015-11-03 12:33:05    1.590772         1.250185  1.794903   \n",
      "6998 2015-11-03 12:33:12    1.517012         1.273452  1.802917   \n",
      "6999 2015-11-03 12:33:19    1.376870         1.293394  1.802917   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "6000        0.038595             1.005326      0.025625  -0.004080   \n",
      "6001        0.059311            -0.525918      0.019801  -0.178499   \n",
      "6002       -0.013196            -0.061098      0.025625  -0.004080   \n",
      "6003       -0.230717            -1.054064      0.025625  -0.004080   \n",
      "6004       -0.282508            -1.084461      0.025625  -0.004080   \n",
      "...              ...                  ...           ...        ...   \n",
      "6995        2.013547             0.807747      0.118766  -0.004080   \n",
      "6996        1.913418             1.352358      0.112942  -0.143615   \n",
      "6997        1.816742             0.432851      0.118766  -0.004080   \n",
      "6998        1.670002             0.492379      0.112942  -0.143615   \n",
      "6999        1.543978             1.074986      0.118766  -0.004080   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "6000      3.160000      3.160000  ... -1.075033        1.090769   \n",
      "6001      2.306667      2.337778  ... -1.075033        1.090769   \n",
      "6002      2.520000      2.528889  ... -1.092243        1.090769   \n",
      "6003      2.004444      2.022222  ... -1.092243        1.090769   \n",
      "6004      0.271111      0.293333  ... -1.092243        1.076923   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "6995      0.231111      0.231111  ... -0.941179        0.583077   \n",
      "6996      0.231111      0.231111  ... -0.922058        0.583077   \n",
      "6997      0.231111      0.231111  ... -0.922058        0.583077   \n",
      "6998      0.231111      0.231111  ... -0.922058        0.600000   \n",
      "6999      0.231111      0.231111  ... -0.922058        0.600000   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "6000        0.615385        0.600000          -0.88           2.80   \n",
      "6001        0.615385        0.600000           0.08           1.40   \n",
      "6002        0.600000        0.600000           1.72           2.96   \n",
      "6003        0.600000        0.600000           1.32           1.36   \n",
      "6004        0.600000        0.600000           0.28           0.92   \n",
      "...              ...             ...            ...            ...   \n",
      "6995        0.952308        0.769231           0.28          -1.20   \n",
      "6996        0.969231        0.769231           2.88          -1.20   \n",
      "6997        0.984615        0.769231           0.44          -0.76   \n",
      "6998        1.000000        0.753846           0.40          -1.36   \n",
      "6999        1.013846        0.753846           0.40           2.24   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "6000           1.92     58      0          1  \n",
      "6001          -1.28     58      0          1  \n",
      "6002           1.28     58      0          1  \n",
      "6003           1.36     58      0          1  \n",
      "6004          -0.72     58      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "6995           0.80     68      0          1  \n",
      "6996           0.56     68      0          1  \n",
      "6997           0.52     68      0          1  \n",
      "6998           0.40     68      0          1  \n",
      "6999           0.64     68      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 8:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "7000 2015-11-03 12:33:26    1.605524         1.280099  1.668732   \n",
      "7001 2015-11-03 12:33:33    1.303110         1.306690  1.854965   \n",
      "7002 2015-11-03 12:33:40    1.384246         1.250185  1.778874   \n",
      "7003 2015-11-03 12:33:47    1.402685         1.273452  1.901037   \n",
      "7004 2015-11-03 12:33:54    1.616588         1.273452  1.770859   \n",
      "...                  ...         ...              ...       ...   \n",
      "7995 2015-11-03 14:31:19    3.508514         1.273452  2.527812   \n",
      "7996 2015-11-03 14:31:26    3.560146         1.220271  2.519797   \n",
      "7997 2015-11-03 14:31:33    3.117590         1.180385  2.513798   \n",
      "7998 2015-11-03 14:31:40    3.276172         1.270128  2.523804   \n",
      "7999 2015-11-03 14:31:47    3.043830         1.236890  2.523804   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "7000        1.431765             0.665894      0.118766  -0.004080   \n",
      "7001        1.348900             0.350526      0.118766   0.030804   \n",
      "7002        1.362710             1.204173      0.124591   0.170338   \n",
      "7003        1.338541             1.059787      0.118766  -0.004080   \n",
      "7004        1.404143             0.943266      0.118766   0.030804   \n",
      "...              ...                  ...           ...        ...   \n",
      "7995        1.259129             1.814644      0.130415   0.135455   \n",
      "7996        1.264308             0.626632      0.130415   0.100571   \n",
      "7997        1.240139             0.417653      0.118766  -0.213382   \n",
      "7998        1.250497             0.551906      0.118766  -0.213382   \n",
      "7999        1.124473             1.109182      0.130415   0.100571   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "7000      0.231111      0.231111  ... -0.922058        0.600000   \n",
      "7001      0.231111      0.231111  ... -0.922058        0.600000   \n",
      "7002      0.231111      0.231111  ... -0.922058        0.600000   \n",
      "7003      0.231111      0.231111  ... -0.922058        0.615385   \n",
      "7004      0.231111      0.231111  ... -0.922058        0.615385   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "7995      5.408889      5.413333  ... -0.730838        1.106154   \n",
      "7996      5.231111      5.226667  ... -0.709804        1.106154   \n",
      "7997      4.711111      4.715556  ... -0.709804        1.106154   \n",
      "7998      4.946667      4.955556  ... -0.730838        1.106154   \n",
      "7999      4.506667      4.537778  ... -0.709804        1.106154   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "7000        1.013846        0.753846           1.72           0.92   \n",
      "7001        1.029231        0.738462           1.92           0.36   \n",
      "7002        1.046154        0.738462           0.44           1.36   \n",
      "7003        1.061538        0.738462          -1.20           2.76   \n",
      "7004        1.076923        0.738462           2.72           0.44   \n",
      "...              ...             ...            ...            ...   \n",
      "7995        0.644615        1.230769           0.12           0.08   \n",
      "7996        0.644615        1.230769           1.08           1.20   \n",
      "7997        0.629231        1.215385           1.36           1.08   \n",
      "7998        0.629231        1.215385           2.08           3.08   \n",
      "7999        0.629231        1.215385           1.56          -0.32   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "7000          -0.64     68      0          1  \n",
      "7001          -0.56     68      0          1  \n",
      "7002           2.84     68      0          1  \n",
      "7003           2.80     68      0          1  \n",
      "7004           0.44     68      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "7995           3.32     78      0          1  \n",
      "7996           1.48     78      0          1  \n",
      "7997           1.48     78      0          1  \n",
      "7998           0.92     78      0          1  \n",
      "7999           0.68     78      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 9:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "8000 2015-11-03 14:31:54    2.940567         1.230242  2.527812   \n",
      "8001 2015-11-03 14:32:01    3.143406         1.243537  2.529827   \n",
      "8002 2015-11-03 14:32:08    3.405251         1.293394  2.535826   \n",
      "8003 2015-11-03 14:32:15    3.464259         1.250185  2.535826   \n",
      "8004 2015-11-03 14:32:22    3.124966         1.220271  2.527812   \n",
      "...                  ...         ...              ...       ...   \n",
      "8995 2015-11-03 16:29:59    3.021703         1.250185  2.519797   \n",
      "8996 2015-11-03 16:30:03    3.209789         1.273452  2.541825   \n",
      "8997 2015-11-03 16:30:10    3.217165         1.300042  2.529827   \n",
      "8998 2015-11-03 16:30:17    3.412627         1.273452  2.527812   \n",
      "8999 2015-11-03 16:30:24    3.220853         1.243537  2.527812   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "8000        1.167632             0.695025      0.130415   0.100571   \n",
      "8001        1.321278             1.111716      0.130415   0.100571   \n",
      "8002        1.383427             1.684191      0.130415   0.135455   \n",
      "8003        1.454207             1.290297      0.124591  -0.038964   \n",
      "8004        1.569873             0.959731      0.118766  -0.213382   \n",
      "...              ...                  ...           ...        ...   \n",
      "8995        1.088220             0.501244      0.083821  -0.004080   \n",
      "8996        1.008807             0.225139      0.083821  -0.004080   \n",
      "8997        1.051966             0.882472      0.083821  -0.004080   \n",
      "8998        1.053693             1.194040      0.083821  -0.004080   \n",
      "8999        0.958743             0.128882      0.083821  -0.004080   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "8000      4.528889      4.546667  ... -0.730838        1.090769   \n",
      "8001      4.395556      4.408889  ... -0.730838        1.090769   \n",
      "8002      5.013333      5.000000  ... -0.730838        1.090769   \n",
      "8003      5.022222      5.008889  ... -0.730838        1.090769   \n",
      "8004      4.764444      4.751111  ... -0.730838        1.090769   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "8995      4.804444      4.822222  ... -0.805414        1.290769   \n",
      "8996      4.488889      4.506667  ... -0.805414        1.290769   \n",
      "8997      5.120000      5.137778  ... -0.805414        1.290769   \n",
      "8998      5.248889      5.284444  ... -0.805414        1.290769   \n",
      "8999      5.008889      5.044444  ... -0.805414        1.290769   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "8000        0.629231        1.215385           1.36           0.88   \n",
      "8001        0.629231        1.215385           2.08          -1.44   \n",
      "8002        0.629231        1.215385           1.28           1.52   \n",
      "8003        0.629231        1.200000           1.48           2.24   \n",
      "8004        0.615385        1.200000           1.48           1.56   \n",
      "...              ...             ...            ...            ...   \n",
      "8995        1.200000        0.583077           0.76          -0.12   \n",
      "8996        1.200000        0.583077           2.00           0.44   \n",
      "8997        1.215385        0.583077           1.28           0.64   \n",
      "8998        1.230769        0.583077           2.08          -1.04   \n",
      "8999        1.230769        0.583077           0.44          -1.16   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "8000           0.48     78      0          1  \n",
      "8001           2.24     78      0          1  \n",
      "8002          -1.96     78      0          1  \n",
      "8003          -2.08     78      0          1  \n",
      "8004           0.56     78      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "8995           1.04     88      0          1  \n",
      "8996           1.32     88      0          1  \n",
      "8997           3.20     88      0          1  \n",
      "8998           1.72     88      0          1  \n",
      "8999           1.16     88      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 10:\n",
      "                    time  wind_speed  generator_speed     power  \\\n",
      "9000 2015-11-03 16:30:31    3.158157         1.220271  2.529827   \n",
      "9001 2015-11-03 16:30:38    3.261420         1.359871  2.535826   \n",
      "9002 2015-11-03 16:30:45    3.408939         1.250185  2.511806   \n",
      "9003 2015-11-03 16:30:52    3.552770         1.270128  2.523804   \n",
      "9004 2015-11-03 16:30:59    3.412627         1.270128  2.523804   \n",
      "...                  ...         ...              ...       ...   \n",
      "9995 2015-11-03 18:28:34    3.051206         1.250185  2.527812   \n",
      "9996 2015-11-03 18:28:41    2.737729         1.223595  2.531819   \n",
      "9997 2015-11-03 18:28:48    3.047518         1.280099  2.523804   \n",
      "9998 2015-11-03 18:28:55    3.113902         1.293394  2.511806   \n",
      "9999 2015-11-03 18:29:02    2.877872         1.243537  2.521812   \n",
      "\n",
      "      wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "9000        1.003628             0.765951      0.083821  -0.004080   \n",
      "9001        0.924216             0.360659      0.083821  -0.004080   \n",
      "9002        0.765391             0.306198      0.083821  -0.004080   \n",
      "9003        0.841351             0.579770      0.083821  -0.004080   \n",
      "9004        0.806824             0.484779      0.083821  -0.004080   \n",
      "...              ...                  ...           ...        ...   \n",
      "9995        0.371782             0.187143      0.182786   0.170338   \n",
      "9996        0.502985             0.739353      0.176962   0.030804   \n",
      "9997        0.516796             0.859675      0.171138  -0.143615   \n",
      "9998        0.325170            -0.675369      0.176962  -0.004080   \n",
      "9999        0.226768            -0.405597      0.176962   0.030804   \n",
      "\n",
      "      pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "9000      4.488889      4.520000  ... -0.805414        1.290769   \n",
      "9001      5.346667      5.333333  ... -0.805414        1.276923   \n",
      "9002      5.448889      5.466667  ... -0.805414        1.290769   \n",
      "9003      5.302222      5.315556  ... -0.767170        1.276923   \n",
      "9004      5.395556      5.395556  ... -0.788204        1.276923   \n",
      "...            ...           ...  ...       ...             ...   \n",
      "9995      3.373333      3.373333  ... -0.901023        0.923077   \n",
      "9996      2.337778      2.337778  ... -0.901023        0.923077   \n",
      "9997      3.004444      2.991111  ... -0.901023        0.923077   \n",
      "9998      3.666667      3.653333  ... -0.883814        0.923077   \n",
      "9999      3.560000      3.577778  ... -0.901023        0.923077   \n",
      "\n",
      "      pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "9000        1.246154        0.583077           0.28          -1.32   \n",
      "9001        1.246154        0.583077           1.20           0.64   \n",
      "9002        1.246154        0.583077          -1.32           1.44   \n",
      "9003        1.260000        0.583077          -1.28           2.72   \n",
      "9004        1.260000        0.600000           1.68           2.64   \n",
      "...              ...             ...            ...            ...   \n",
      "9995        0.569231        1.167692           0.76           2.44   \n",
      "9996        0.569231        1.167692           1.40           0.60   \n",
      "9997        0.569231        1.153846           0.04           0.04   \n",
      "9998        0.583077        1.153846           1.00           0.04   \n",
      "9999        0.569231        1.153846           2.00           0.72   \n",
      "\n",
      "      pitch3_ng5_DC  group  label  new_group  \n",
      "9000           1.48     88      0          1  \n",
      "9001           1.76     88      0          1  \n",
      "9002          -1.64     88      0          1  \n",
      "9003          -0.88     88      0          1  \n",
      "9004          -0.44     88      0          1  \n",
      "...             ...    ...    ...        ...  \n",
      "9995           1.80     98      0          1  \n",
      "9996          -0.48     98      0          1  \n",
      "9997           2.96     98      0          1  \n",
      "9998           0.40     98      0          1  \n",
      "9999           0.28     98      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 11:\n",
      "                     time  wind_speed  generator_speed     power  \\\n",
      "10000 2015-11-03 18:29:09    3.040143         1.273452  2.531819   \n",
      "10001 2015-11-03 18:29:19    2.936879         1.270128  2.535826   \n",
      "10002 2015-11-03 18:29:26    2.981135         1.306690  2.543841   \n",
      "10003 2015-11-03 18:29:33    2.859432         1.230242  2.519797   \n",
      "10004 2015-11-03 18:29:40    3.073334         1.293394  2.531819   \n",
      "...                   ...         ...              ...       ...   \n",
      "10995 2015-11-03 23:09:37    0.595021         1.250185  0.898797   \n",
      "10996 2015-11-03 23:09:44    0.226224         1.263480  0.772650   \n",
      "10997 2015-11-03 23:09:51    1.100272         1.220271  0.852749   \n",
      "10998 2015-11-03 23:09:58    0.705660         1.293394  1.008939   \n",
      "10999 2015-11-03 23:10:01    0.665092         1.223595  0.721564   \n",
      "\n",
      "       wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "10000        0.100744             0.273268      0.176962   0.030804   \n",
      "10001       -0.078797             0.389789      0.176962  -0.004080   \n",
      "10002       -0.109872            -0.228281      0.176962  -0.004080   \n",
      "10003       -0.044270            -0.377733      0.176962  -0.004080   \n",
      "10004        0.036868             1.196574      0.176962  -0.004080   \n",
      "...               ...                  ...           ...        ...   \n",
      "10995        1.493914             1.750051      0.229380  -0.004080   \n",
      "10996        1.697624             2.281996      0.235157   0.100571   \n",
      "10997        1.756320             1.347292      0.235157   0.135455   \n",
      "10998        1.640654             0.696291      0.223556  -0.283150   \n",
      "10999        1.549157             0.461982      0.235157   0.030804   \n",
      "\n",
      "       pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "10000      3.582222      3.582222  ... -0.901023        0.923077   \n",
      "10001      2.982222      2.937778  ... -0.901023        0.923077   \n",
      "10002      3.306667      3.306667  ... -0.901023        0.923077   \n",
      "10003      3.715556      3.728889  ... -0.901023        0.923077   \n",
      "10004      3.946667      3.937778  ... -0.901023        0.923077   \n",
      "...             ...           ...  ...       ...             ...   \n",
      "10995      0.435556      0.435556  ... -0.958389        1.353846   \n",
      "10996      0.435556      0.435556  ... -0.979423        1.353846   \n",
      "10997      0.435556      0.435556  ... -0.979423        1.353846   \n",
      "10998      0.435556      0.435556  ... -0.996633        1.353846   \n",
      "10999      0.435556      0.435556  ... -0.996633        1.353846   \n",
      "\n",
      "       pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "10000        0.583077        1.153846           3.08          -1.68   \n",
      "10001        0.583077        1.153846           3.00           0.36   \n",
      "10002        0.583077        1.153846           2.24           1.48   \n",
      "10003        0.583077        1.153846           1.76           2.76   \n",
      "10004        0.583077        1.153846           3.12           1.20   \n",
      "...               ...             ...            ...            ...   \n",
      "10995        0.629231        1.336923           2.60           0.80   \n",
      "10996        0.629231        1.353846           2.84           2.64   \n",
      "10997        0.629231        1.353846          -0.84           2.32   \n",
      "10998        0.615385        1.353846           1.96           2.88   \n",
      "10999        0.615385        1.353846          -0.84           1.56   \n",
      "\n",
      "       pitch3_ng5_DC  group  label  new_group  \n",
      "10000           0.56     98      0          1  \n",
      "10001           0.36     98      0          1  \n",
      "10002           0.36     98      0          1  \n",
      "10003           1.88     98      0          1  \n",
      "10004           1.24     98      0          1  \n",
      "...              ...    ...    ...        ...  \n",
      "10995          -2.28    107      0          1  \n",
      "10996           2.84    107      0          1  \n",
      "10997           1.04    107      0          1  \n",
      "10998           0.44    107      0          1  \n",
      "10999          -0.36    107      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n",
      "Segment 12:\n",
      "                     time  wind_speed  generator_speed     power  \\\n",
      "11000 2015-11-03 23:10:08    0.694596         1.286747  0.894790   \n",
      "11001 2015-11-03 23:10:16    0.392183         1.316661  1.014938   \n",
      "11002 2015-11-03 23:10:26    0.904810         1.286747  0.950869   \n",
      "11003 2015-11-03 23:10:33    1.019137         1.230242  0.898797   \n",
      "11004 2015-11-03 23:10:40    0.705660         1.270128  0.737569   \n",
      "...                   ...         ...              ...       ...   \n",
      "11995 2015-11-04 19:39:51    0.890058         1.273452  1.303297   \n",
      "11996 2015-11-04 19:39:58    0.513886         1.230242  1.432444   \n",
      "11997 2015-11-04 19:40:01    0.580269         1.206976  1.229222   \n",
      "11998 2015-11-04 19:40:08    0.440126         1.263480  1.277262   \n",
      "11999 2015-11-04 19:40:15    0.679844         1.263480  1.578627   \n",
      "\n",
      "       wind_direction  wind_direction_mean  yaw_position  yaw_speed  \\\n",
      "11000        1.452481             0.582303      0.229380  -0.108731   \n",
      "11001        1.449028             0.853342      0.235157   0.065687   \n",
      "11002        1.500819             2.631561      0.235157   0.065687   \n",
      "11003        1.666549             1.940031      0.229380  -0.073848   \n",
      "11004        1.789121             1.048389      0.223556  -0.248266   \n",
      "...               ...                  ...           ...        ...   \n",
      "11995       -0.653674            -1.170585      0.223556   0.170338   \n",
      "11996       -0.916080            -1.354233      0.211908  -0.143615   \n",
      "11997       -1.002398            -1.430225      0.223556   0.170338   \n",
      "11998       -0.831489             0.418919      0.223556   0.135455   \n",
      "11999       -0.771066             0.177011      0.223556   0.135455   \n",
      "\n",
      "       pitch1_angle  pitch2_angle  ...   int_tmp  pitch1_ng5_tmp  \\\n",
      "11000      0.435556      0.435556  ... -0.996633        1.353846   \n",
      "11001      0.435556      0.435556  ... -0.996633        1.353846   \n",
      "11002      0.435556      0.435556  ... -0.958389        1.353846   \n",
      "11003      0.435556      0.435556  ... -0.941179        1.336923   \n",
      "11004      0.435556      0.435556  ... -0.941179        1.336923   \n",
      "...             ...           ...  ...       ...             ...   \n",
      "11995      0.191111      0.275556  ... -0.118935        1.384615   \n",
      "11996      0.191111      0.275556  ... -0.136145        1.384615   \n",
      "11997      0.191111      0.275556  ... -0.118935        1.384615   \n",
      "11998      0.191111      0.275556  ... -0.118935        1.384615   \n",
      "11999      0.191111      0.275556  ... -0.118935        1.384615   \n",
      "\n",
      "       pitch2_ng5_tmp  pitch3_ng5_tmp  pitch1_ng5_DC  pitch2_ng5_DC  \\\n",
      "11000        0.615385        1.353846           0.16          -0.48   \n",
      "11001        0.615385        1.353846           0.28          -0.72   \n",
      "11002        0.615385        1.353846           0.44          -0.76   \n",
      "11003        0.615385        1.353846           0.44          -1.00   \n",
      "11004        0.615385        1.353846           0.44          -0.20   \n",
      "...               ...             ...            ...            ...   \n",
      "11995        0.846154        0.753846           0.40           1.64   \n",
      "11996        0.846154        0.753846          -2.28          -1.40   \n",
      "11997        0.846154        0.738462           2.68          -1.56   \n",
      "11998        0.846154        0.738462          -1.44          -0.92   \n",
      "11999        0.846154        0.738462          -1.32          -0.56   \n",
      "\n",
      "       pitch3_ng5_DC  group  label  new_group  \n",
      "11000           0.80    107      0          1  \n",
      "11001          -0.64    107      0          1  \n",
      "11002          -0.32    107      0          1  \n",
      "11003           0.08    107      0          1  \n",
      "11004           0.16    107      0          1  \n",
      "...              ...    ...    ...        ...  \n",
      "11995          -0.80    115      0          1  \n",
      "11996           2.84    115      0          1  \n",
      "11997           2.68    115      0          1  \n",
      "11998           0.36    115      0          1  \n",
      "11999           0.72    115      0          1  \n",
      "\n",
      "[1000 rows x 30 columns]\n",
      "\n"
     ]
    }
   ],
   "execution_count": 136
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-10-23T12:02:40.227197Z",
     "start_time": "2024-10-23T12:02:40.217208Z"
    }
   },
   "cell_type": "code",
   "source": [
    "test_df = data_df.head(5)\n",
    "# print(test_df.dtypes)\n",
    "test_df = test_df.drop(['time', 'new_group', 'label'], axis=1)\n",
    "# print(test_df.dtypes)\n",
    "print(test_df.values.tolist())\n",
    "torch.tensor(test_df.values.tolist())"
   ],
   "id": "b41927e31f29c344",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[2.67134588990357, 1.31666106310924, 2.57186805089231, -0.786603692876605, -0.985670768693899, 0.235157406163882, -0.143615010919924, 4.65333333333333, 4.64, 4.65777777777778, 6.16, 5.64, 6.08, 0.839, 0.83, 0.9, 2.35064377233223, 0.0611094692486426, 0.337770343840206, 0.686099121242749, 0.769230769230769, 1.0, 0.923076923076923, 0.08, -0.8, 0.6, 1.0], [3.05858235103062, 1.29339442866881, 2.53781796823372, -0.924712234586265, -0.712098641556373, 0.235157406163882, -0.108731292251418, 6.39555555555556, 6.41777777777778, 6.43111111111111, 1.08, 1.08, 0.92, 0.839, 0.85, 0.9, 0.100890334137025, 0.0611094692486426, 0.337770343840206, 0.686099121242749, 0.769230769230769, 1.0, 0.923076923076923, 0.68, 1.04, 0.76, 1.0], [3.2798603288175, 1.1870326712268, 2.55185513238547, -0.962692083556421, -1.05406380047828, 0.235157406163882, -0.108731292251418, 5.41777777777778, 5.43555555555556, 5.45333333333333, -1.84, -1.8, -1.68, 0.85, 0.85, 0.9, 1.22576705323463, 0.0611094692486426, 0.337770343840206, 0.686099121242749, 0.769230769230769, 1.01384615384615, 0.923076923076923, 1.0, 1.44, 0.88, 1.0], [3.23191676696367, 1.27012779422837, 2.54983977993631, -0.826309898618132, -0.655104448402719, 0.235157406163882, -0.108731292251418, 5.72888888888889, 5.72888888888889, 5.77777777777778, -2.36, -1.92, -2.32, 0.85, 0.86, 0.93, -1.02398638496058, -1.20952196122657, 0.337770343840206, 0.686099121242749, 0.769230769230769, 1.04615384615385, 0.923076923076923, 0.24, 1.24, 1.36, 1.0], [3.3646835536358, 1.32995628278949, 2.55785432107136, -0.86774246113103, -1.33650169099526, 0.235157406163882, -0.108731292251418, 5.98666666666667, 5.98222222222222, 6.00888888888889, 1.4, 1.12, 1.32, 0.85, 0.869, 0.93, 1.22576705323463, 0.0611094692486426, 0.337770343840206, 0.686099121242749, 0.769230769230769, 1.04615384615385, 0.923076923076923, 0.88, -1.32, -1.48, 1.0]]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "tensor([[ 2.6713,  1.3167,  2.5719, -0.7866, -0.9857,  0.2352, -0.1436,  4.6533,\n",
       "          4.6400,  4.6578,  6.1600,  5.6400,  6.0800,  0.8390,  0.8300,  0.9000,\n",
       "          2.3506,  0.0611,  0.3378,  0.6861,  0.7692,  1.0000,  0.9231,  0.0800,\n",
       "         -0.8000,  0.6000,  1.0000],\n",
       "        [ 3.0586,  1.2934,  2.5378, -0.9247, -0.7121,  0.2352, -0.1087,  6.3956,\n",
       "          6.4178,  6.4311,  1.0800,  1.0800,  0.9200,  0.8390,  0.8500,  0.9000,\n",
       "          0.1009,  0.0611,  0.3378,  0.6861,  0.7692,  1.0000,  0.9231,  0.6800,\n",
       "          1.0400,  0.7600,  1.0000],\n",
       "        [ 3.2799,  1.1870,  2.5519, -0.9627, -1.0541,  0.2352, -0.1087,  5.4178,\n",
       "          5.4356,  5.4533, -1.8400, -1.8000, -1.6800,  0.8500,  0.8500,  0.9000,\n",
       "          1.2258,  0.0611,  0.3378,  0.6861,  0.7692,  1.0138,  0.9231,  1.0000,\n",
       "          1.4400,  0.8800,  1.0000],\n",
       "        [ 3.2319,  1.2701,  2.5498, -0.8263, -0.6551,  0.2352, -0.1087,  5.7289,\n",
       "          5.7289,  5.7778, -2.3600, -1.9200, -2.3200,  0.8500,  0.8600,  0.9300,\n",
       "         -1.0240, -1.2095,  0.3378,  0.6861,  0.7692,  1.0462,  0.9231,  0.2400,\n",
       "          1.2400,  1.3600,  1.0000],\n",
       "        [ 3.3647,  1.3300,  2.5579, -0.8677, -1.3365,  0.2352, -0.1087,  5.9867,\n",
       "          5.9822,  6.0089,  1.4000,  1.1200,  1.3200,  0.8500,  0.8690,  0.9300,\n",
       "          1.2258,  0.0611,  0.3378,  0.6861,  0.7692,  1.0462,  0.9231,  0.8800,\n",
       "         -1.3200, -1.4800,  1.0000]])"
      ]
     },
     "execution_count": 150,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 150
  },
  {
   "metadata": {},
   "cell_type": "code",
   "outputs": [],
   "execution_count": null,
   "source": "",
   "id": "a6db5b7b71a2d61b"
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
